@charset "UTF-8";
@font-face {
    font-family: swiper-icons;
    font-style: normal;
    font-weight: 400;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff")
}
@font-face {
    font-family: 'icomoon';
    src: url('../fonts/icomoon.ttf') format('truetype');
} 
.branded-banner {
    background-color: #000;
    isolation: isolate;
    padding-top: var(--spacing-7-half);
    position: relative
}

@media (min-width: 1024px) {
    .branded-banner {
        padding: var(--spacing-36) 0 var(--spacing-44) 0
    }
}

.branded-banner__image {
    aspect-ratio: 1/1;
    height: auto;
    position: relative;
    width: 100%
}

@media (min-width: 1024px) {
    .branded-banner__image {
        aspect-ratio: 1204/820;
        bottom: 0;
        height: 100%;
        position: absolute;
        right: 0;
        top: 0;
        width: auto;
        z-index: -1
    }
}

.branded-banner__image:after {
    background: -webkit-gradient(linear,left top,left bottom,from(#000),to(transparent));
    background: linear-gradient(180deg,#000,transparent);
    content: "";
    height: 60px;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width: 1024px) {
    .branded-banner__image:after {
        background: -webkit-gradient(linear,left top,right top,from(#000),to(transparent));
        background: linear-gradient(90deg,#000,transparent);
        height: 100%;
        max-width: 580px
    }
}

.branded-banner__image:before {
    background: -webkit-gradient(linear,left top,left bottom,from(#000),to(transparent));
    background: linear-gradient(180deg,#000,transparent);
    content: "";
    display: none;
    height: 85px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

.theme-dark .branded-banner__image:before {
    display: block
}

.branded-banner__image img {
    height: 100%;
    inset: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    width: 100%
}

.branded-banner__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-4);
    padding-bottom: var(--spacing-10)
}

@media (min-width: 1024px) {
    .branded-banner__content {
        gap: var(--spacing-6);
        padding-bottom: 0;
        width: 50%
    }
}

.branded-banner__logo {
    height: auto;
    width: 90px
}

.branded-banner__title {
    color: var(--colour-text-light);
    font-size: var(--font-size-4xl);
    line-height: var(--line-height-sm)
}

@media (min-width: 1024px) {
    .branded-banner__title {
        font-size: var(--font-size-6xl);
        line-height: var(--line-height-base)
    }
}

.branded-banner__tagline, .branded-banner__text {
    color: var(--colour-text-light)
}

.branded-banner__tagline {
    font-size: var(--font-size-xl);
    line-height: var(--line-height-xl)
}

    .branded-banner__tagline .text-primary {
        font-weight: var(--font-weight-bold)
    }

.branded-banner__ctas {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--spacing-5)
}

.fast-nav {
    background: #fff;
    padding-bottom: var(--spacing-6);
    z-index: var(--z-10)
}

@media (min-width: 1024px) {
    .fast-nav {
        padding-bottom: 0
    }
}

.fast-nav__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: calc(-1 * var(--spacing-12));
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    background: var(--colour-bg-default);
    -webkit-box-shadow: 0 0 50px 0 rgba(0,0,0,.2);
    box-shadow: 0 0 50px 0 rgba(0,0,0,.2);
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-5);
    padding: var(--spacing-8) var(--spacing-5)
}

@media (min-width: 768px) {
    .fast-nav__inner {
        max-width: var(--max-w-lg)
    }
}

@media (min-width: 1024px) {
    .fast-nav__inner {
        margin-bottom: calc(-1 * var(--spacing-14));
        max-width: 1200px;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        padding: var(--spacing-6) var(--spacing-16);
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

.fast-nav__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-2);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

@media (min-width: 1024px) {
    .fast-nav__block {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: var(--spacing-5);
        -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
        flex: 1 1 100%
    }
}

.fast-nav__block:last-child {
    margin-top: var(--spacing-2-half)
}

@media (min-width: 1024px) {
    .fast-nav__block:last-child {
        margin-top: 0;
        -webkit-box-flex: 0;
        -ms-flex: 0;
        flex: 0;
        margin-left: var(--spacing-14)
    }

    .fast-nav__block .dropdown {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
}

.fast-nav__block a.btn-primary {
    padding-bottom: var(--spacing-3);
    padding-top: var(--spacing-3)
}

@media (min-width: 1024px) {
    .fast-nav__block a.btn-primary {
        min-width: -webkit-max-content;
        min-width: -moz-max-content;
        min-width: max-content;
        padding-bottom: var(--spacing-2);
        padding-top: var(--spacing-2)
    }
}

.fast-nav__block a.btn-primary:after {
    position: absolute;
    right: var(--spacing-3)
}

@media (min-width: 1024px) {
    .fast-nav__block a.btn-primary:after {
        position: relative;
        right: auto
    }
}

.fast-nav__label {
    font-size: var(--font-size-body-regular);
    font-weight: var(--font-weight-semibold)
}

.customer-testimonials {
    color: var(--colour-base-white);
    overflow: hidden;
    padding-bottom: var(--spacing-15);
    padding-top: var(--spacing-15);
    --customer-testimonial-overlay: 255,255,255;
    --colour-footer-hover-bg: var(--colour-brand-tag-teal)
}

    .customer-testimonials.bg-red, .customer-testimonials.bg-teal, .customer-testimonials.bg-teal-dark {
        --customer-testimonial-overlay: 0,0,0
    }

    .customer-testimonials.bg-red-dark {
        --colour-footer-hover-bg: var(--colour-brand-tag-purple)
    }

    .customer-testimonials.bg-light-grey, .customer-testimonials.bg-light-teal {
        color: var(--colour-text-base);
        padding-bottom: 5rem;
    }

        .customer-testimonials.bg-light-grey .carousel-controls .btn-control[disabled], .customer-testimonials.bg-light-teal .carousel-controls .btn-control[disabled] {
            --_disabled-background-colour: rgba(0,0,0,.2)
        }

.customer-testimonials__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--spacing-14)
}

@media (min-width: 1024px) {
    .customer-testimonials__inner {
        gap: var(--spacing-20)
    }
}

.customer-testimonials__title {
    font-size: var(--widget-font-size--mobile);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-md);
    text-align: center
}

@media (min-width: 1024px) {
    .customer-testimonials__title {
        font-size: var(--widget-font-size--desktop)
    }
}

.customer-testimonials .carousel {
    gap: var(--spacing-10)
}

@media (min-width: 1024px) {
    .customer-testimonials .carousel {
        gap: var(--spacing-14)
    }
}

.customer-testimonials .carousel-controls {
    padding-left: var(--container-spacing);
    padding-right: var(--container-spacing)
}

.customer-testimonials .carousel-controls__arrows {
    display: none
}

@media (min-width: 1024px) {
    .customer-testimonials .carousel-controls__arrows {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        bottom: 0px;
        position: relative;
        right: 10rem;
        top: 2rem;
    }
}

.customer-testimonials .carousel-controls .btn-control[disabled] {
    --_disabled-background-colour: hsla(0,0%,100%,.2);
    --_disabled-box-shadow-colour: transparent
}

.customer-testimonials.bg-light-grey .carousel-controls .btn-control[disabled] {
    --_disabled-background-colour: var(--colour-neutral-mid-grey)
}

.customer-testimonials .swiper {
    padding: 0 var(--container-spacing)
}

.customer-testimonial {
    background: rgba(var(--customer-testimonial-overlay),.1);
    border-radius: var(--border-radius-sm);
    color: var(--colour-brand-primary-contrast);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: var(--spacing-5);
    overflow: hidden;
    width: 300px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

@media (min-width: 1024px) {
    .customer-testimonial {
        margin-right: var(--spacing-10);
        width: 358px
    }
}

.customer-testimonial__inner {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.customer-testimonial__header, .customer-testimonial__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.customer-testimonial__header {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    gap: var(--spacing-4);
    justify-content: flex-start;
    padding-left: var(--spacing-5);
    padding-right: var(--spacing-5);
    padding-top: var(--spacing-6)
}

@media (min-width: 1024px) {
    .customer-testimonial__header {
        padding-left: var(--spacing-6);
        padding-right: var(--spacing-6)
    }
}

.customer-testimonial__image {
    height: var(--h-20);
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center;
    width: auto
}

    .customer-testimonial__image img {
        height: 100%;
        width: auto
    }

.customer-testimonial__author-name {
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-bold);
    min-width: 120px;
    text-align: center
}

.customer-testimonial__text {
    font-size: var(--font-size-body-sm);
    line-height: var(--line-height-2xl);
    padding: var(--spacing-6) var(--spacing-5) var(--spacing-9);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

@media (min-width: 1024px) {
    .customer-testimonial__text {
        padding-left: var(--spacing-6);
        padding-right: var(--spacing-6)
    }
}

.customer-testimonial__footer {
    background-color: rgba(0,0,0,.2);
    font-weight: var(--font-weight-bold);
    padding: var(--spacing-5) var(--spacing-5);
    -webkit-transition: background-color .5s ease;
    transition: background-color .5s ease
}

@media (min-width: 1024px) {
    .customer-testimonial__footer {
        padding-left: var(--spacing-6);
        padding-right: var(--spacing-6)
    }
}

.customer-testimonial:hover .customer-testimonial__footer {
    background-color: var(--colour-footer-hover-bg)
}

.case-study-card {
    background: #f3f3f3;
    border-radius: 5px;
    color: var(--colour-brand-primary-contrast);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: var(--spacing-5);
    overflow: hidden;
    width: 300px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

@media (min-width: 1024px) {
    .case-study-card { 
        margin-right: 34px;
        width: 380px;
        height: 400px;
    }
}

.case-study-card__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.case-study-card__title {
    background-color: var(--theme,var(--colour-brand-primary));
    padding: 10px;
    margin: 1.5rem;
    font-size:18px;
    font-weight: bold;
    border-radius: 4px;
    color: #fff;
}

.case-study-card__image {
    height: var(--h-20);
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center;
    width: auto
}

    .case-study-card__image img {
        height: 100%;
        width: auto
    }

.case-study-card__text {
    font-size: var(--font-size-body-sm);
    line-height: var(--line-height-2xl);
    padding: var(--spacing-6) var(--spacing-5) var(--spacing-9);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    color: var(--colour-text-base);
    flex-grow: 1
}

@media (min-width: 1024px) {
    .case-study-card__text {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.case-study-card__footer {
    background-color: rgba(0,0,0,.2);
    font-weight: var(--font-weight-bold);
    padding: 20px;
    -webkit-transition: background-color .5s ease;
    transition: background-color .5s ease
}

@media (min-width: 1024px) {
    .case-study-card__footer {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.case-study-card:hover .case-study-card__footer {
    background-color: var(--theme,var(--colour-brand-primary));
    color: #fff;
}

.video-row {
    --_chosen-pattern--mobile: var(--pattern-2--mobile);
    --_chosen-pattern--desktop: var(--pattern-4--desktop);
    padding-top: var(--widget-vertical-padding--mobile);
    padding-bottom: var(--widget-vertical-padding--mobile);
    background-image: none;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: top center;
}

@media (min-width: 1024px) {
    .video-row {
        padding-top: var(--widget-vertical-padding--desktop);
        padding-bottom: var(--widget-vertical-padding--desktop);
        background-image: var(--_chosen-pattern--desktop);
    }
}

.video-row__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-5);
    margin: 0 auto;
}

@media (min-width: 1024px) {
    .video-row__inner {
        gap: var(--spacing-7-half);
    }
}

.video-row__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-5);
    text-align: center;
    max-width: 584px;
}

@media (min-width: 1024px) {
    .video-row__header {
        gap: var(--spacing-7-half);
    }
}

.video-row__title {
    font-weight: var(--font-weight-bold);
    font-size: var(--widget-font-size--mobile);
}

@media (min-width: 1024px) {
    .video-row__title {
        font-size: var(--widget-font-size--desktop);
    }
}

.video-row__text {
    max-width: 584px;
    text-align: center;
}

.video-row__ctas {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-5);
}

@media (min-width: 1024px) {
    .video-row__ctas {
        flex-direction: row;
    }
}

.video-row__video {
    margin-top: var(--spacing-5);
    display: flex;
    width: 100%;
    max-width: 994px;
    justify-content: center;
}

@media (min-width: 1024px) {
    .video-row__video {
        margin-top: var(--spacing-7);
    }
}

.fifty-fifty {
    background-color: var(--colour-bg-default);
    overflow-x: clip;
    padding-bottom: var(--widget-vertical-padding--mobile);
    padding-top: var(--widget-vertical-padding--mobile)
}

@media (min-width: 1024px) {
    .fifty-fifty {
        padding-bottom: var(--widget-vertical-padding--desktop);
        padding-top: var(--widget-vertical-padding--desktop)
    }
}

.fifty-fifty__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-10)
}

@media (min-width: 1024px) {
    .fifty-fifty__inner {
        gap: var(--spacing-24);
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
}

@media (min-width: 1280px) {
    .fifty-fifty__inner {
        gap: var(--spacing-26)
    }
}

.fifty-fifty__content-panel {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

@media (min-width: 1024px) {
    .fifty-fifty__text-block {
        max-width: 420px
    }
}

.fifty-fifty__design-mark {
    margin-bottom: var(--spacing-8)
}

@media (min-width: 1024px) {
    .fifty-fifty__design-mark {
        margin-bottom: var(--spacing-10)
    }
}

.fifty-fifty__heading {
    font-size: var(--widget-font-size--mobile);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--spacing-5)
}

@media (min-width: 1024px) {
    .fifty-fifty__heading {
        font-size: var(--widget-font-size--desktop);
        margin-bottom: var(--spacing-8)
    }
}

.fifty-fifty__ctas {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--spacing-5);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: var(--spacing-8)
}

@media (min-width: 640px) {
    .fifty-fifty__ctas {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
}

.fifty-fifty__image-panel {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative;
    width: 100%;
    -ms-flex-item-align: center;
    align-self: center
}

@media (min-width: 1024px) {
    .fifty-fifty__image-panel {
        width: auto
    }
}

.fifty-fifty__image-panel.is-grid {
    aspect-ratio: 628/570
}

.fifty-fifty__image-panel .shard {
    display: none
}

.fifty-fifty__image-panel:after {
    background-image: var(--_chosen-pattern--mobile);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width: 1024px) {
    .fifty-fifty__image-panel:after {
        background-image: var(--_chosen-pattern--desktop)
    }
}

.fifty-fifty__image-panel > div:only-of-type {
    grid-column: -1/1;
    grid-row: -1/1
}

.fifty-fifty__image-panel.is-grid:has(div:nth-of-type(3)) {
    --_panel-width: 628;
    --_panel-height: 570
}

    .fifty-fifty__image-panel.is-grid:has(div:nth-of-type(3)):after {
        bottom: 0;
        height: calc(64000% / var(--_panel-height));
        left: 50%;
        top: auto;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        width: calc(73143% / var(--_panel-width))
    }

    .fifty-fifty__image-panel.is-grid:has(div:nth-of-type(3)) .fifty-fifty__image {
        position: absolute;
        width: calc(100% * var(--_image-width) / var(--_panel-width))
    }

        .fifty-fifty__image-panel.is-grid:has(div:nth-of-type(3)) .fifty-fifty__image:first-child {
            aspect-ratio: 346.51/266.93;
            left: 0;
            top: 0;
            --_image-width: 346.51
        }

        .fifty-fifty__image-panel.is-grid:has(div:nth-of-type(3)) .fifty-fifty__image:nth-child(2) {
            aspect-ratio: 262.95/355.66;
            right: 0;
            top: calc(6033% / var(--_panel-height));
            --_image-width: 262.95
        }

        .fifty-fifty__image-panel.is-grid:has(div:nth-of-type(3)) .fifty-fifty__image:nth-child(3) {
            aspect-ratio: 251.38/283.41;
            bottom: 0;
            left: calc(9429% / var(--_panel-width));
            --_image-width: 251.38
        }

.fifty-fifty__video-panel {
    -webkit-box-flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 1;
    flex: 1;
    position: relative;
    width: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-item-align: center;
    align-self: center
}

@media (min-width: 1024px) {
    .fifty-fifty__video-panel {
        width: auto
    }
}

.fifty-fifty__image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-height: 100%;
    opacity: 0;
    position: relative;
    -webkit-transform: scale(.9);
    -ms-transform: scale(.9);
    transform: scale(.9);
    -webkit-transition: all .75s ease;
    transition: all .75s ease
}

    .fifty-fifty__image img {
        border-radius: var(--border-radius-lg);
        height: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center;
        object-position: center;
        position: absolute;
        top: 0;
        width: 100%
    }

.fifty-fifty__video {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    opacity: 0;
    -webkit-transform: scale(.9);
    -ms-transform: scale(.9);
    transform: scale(.9);
    -webkit-transition: all .75s ease;
    transition: all .75s ease
}

.fifty-fifty__image:first-child {
    grid-area: one
}

    .fifty-fifty__image:first-child:before {
        content: "";
        float: left;
        height: 0;
        margin-left: -1px;
        padding-top: 77.3195876289%;
        width: 1px
    }

.fifty-fifty__image:nth-child(2) {
    grid-area: two;
    -webkit-transition-delay: .25s;
    transition-delay: .25s
}

    .fifty-fifty__image:nth-child(2):before {
        content: "";
        float: left;
        height: 0;
        margin-left: -1px;
        padding-top: 135.3741496599%;
        width: 1px
    }

.fifty-fifty__image:nth-child(3) {
    grid-area: three;
    -webkit-transition-delay: .5s;
    transition-delay: .5s
}

    .fifty-fifty__image:nth-child(3):before {
        content: "";
        float: left;
        height: 0;
        margin-left: -1px;
        padding-top: 112.8571428571%;
        width: 1px
    }

.fifty-fifty--reversed .fifty-fifty__content-panel {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

@media (min-width: 1024px) {
    .fifty-fifty--reversed .fifty-fifty__content-panel {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }
}

.fifty-fifty--reversed .fifty-fifty__image-panel {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

@media (min-width: 1024px) {
    .fifty-fifty--reversed .fifty-fifty__image-panel {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
}

.fifty-fifty--reversed .fifty-fifty__video-panel {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

@media (min-width: 1024px) {
    .fifty-fifty--reversed .fifty-fifty__video-panel {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }

    .fifty-fifty--reversed .fifty-fifty__text-block {
        margin-left: auto
    }
}

.fifty-fifty--svg .fifty-fifty__image-panel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

    .fifty-fifty--svg .fifty-fifty__image-panel:after {
        background-image: var(--pattern-fifty-fifty-svg-foreground)
    }

.fifty-fifty--svg .fifty-fifty__image:first-child {
    aspect-ratio: 1/1;
    margin-bottom: var(--spacing-2);
    margin-top: var(--spacing-16);
    width: 68.5714285714%
}

@media (min-width: 1024px) {
    .fifty-fifty--svg .fifty-fifty__image:first-child {
        margin-bottom: var(--spacing-4);
        margin-top: var(--spacing-28);
        width: 68.53625171%
    }
}

.fifty-fifty--svg .fifty-fifty__image:nth-child(2) {
    -webkit-filter: drop-shadow(0 0 38px rgba(0,0,0,.1));
    filter: drop-shadow(0 0 38px rgba(0,0,0,.1));
    position: absolute;
    right: 0;
    top: 0;
    width: 50.2857142857%;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

@media (min-width: 1024px) {
    .fifty-fifty--svg .fifty-fifty__image:nth-child(2) {
        width: 50.1366120219%
    }
}

.fifty-fifty--svg .fifty-fifty__image:nth-child(2) img {
    -o-object-fit: contain;
    object-fit: contain;
    position: relative
}

.fifty-fifty .shard {
    display: block !important;
    opacity: 0;
    position: absolute;
    z-index: 1
}

    .fifty-fifty .shard:nth-child(1 of .shard) {
        -webkit-animation-duration: 20s;
        animation-duration: 20s;
        -webkit-animation-iteration-count: infinite;
        animation-iteration-count: infinite;
        -webkit-animation-name: fifty-fifty-shards-1;
        animation-name: fifty-fifty-shards-1;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
        aspect-ratio: 1/1;
        background: var(--colour-brand-tag-teal);
        clip-path: polygon(50% 0,0 100%,100% 100%);
        left: 65%;
        top: -11%;
        -webkit-transform: rotate(-36deg);
        -ms-transform: rotate(-36deg);
        transform: rotate(-36deg);
        width: 10%
    }

    .fifty-fifty .shard:nth-child(2 of .shard) {
        -webkit-animation-iteration-count: infinite;
        animation-iteration-count: infinite;
        -webkit-animation-name: fifty-fifty-shards-2;
        animation-name: fifty-fifty-shards-2;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
        aspect-ratio: 7/3;
        background: var(--colour-brand-tag-purple);
        left: 81%;
        top: 6%;
        -webkit-transform: rotate(48deg);
        -ms-transform: rotate(48deg);
        transform: rotate(48deg);
        width: 10%
    }

    .fifty-fifty .shard:nth-child(2 of .shard), .fifty-fifty .shard:nth-child(3 of .shard) {
        -webkit-animation-duration: 20s;
        animation-duration: 20s;
        clip-path: polygon(30% 0,0 100%,100% 100%)
    }

    .fifty-fifty .shard:nth-child(3 of .shard) {
        -webkit-animation-iteration-count: infinite;
        animation-iteration-count: infinite;
        -webkit-animation-name: fifty-fifty-shards-3;
        animation-name: fifty-fifty-shards-3;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
        aspect-ratio: 5/3;
        background: var(--colour-brand-tag-teal);
        bottom: 7%;
        left: 59.5%;
        -webkit-transform: rotate(42deg);
        -ms-transform: rotate(42deg);
        transform: rotate(42deg);
        width: 12%
    }

    .fifty-fifty .shard:nth-child(4 of .shard) {
        -webkit-animation-duration: 20s;
        animation-duration: 20s;
        -webkit-animation-iteration-count: infinite;
        animation-iteration-count: infinite;
        -webkit-animation-name: fifty-fifty-shards-4;
        animation-name: fifty-fifty-shards-4;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
        aspect-ratio: 8/4;
        background: var(--colour-brand-tag-red);
        clip-path: polygon(20% 0,0 100%,100% 100%);
        left: -.5%;
        top: 43%;
        -webkit-transform: rotate(-78deg);
        -ms-transform: rotate(-78deg);
        transform: rotate(-78deg);
        width: 15%
    }

.fifty-fifty__image-panel:after {
    display: none !important
}

.in-view .fifty-fifty__image, .in-view .fifty-fifty__video {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

@-webkit-keyframes fifty-fifty-shards-1 {
    0%,to {
        opacity: 0;
        -webkit-transform: translate(-200%,300%) rotate(-90deg);
        transform: translate(-200%,300%) rotate(-90deg)
    }

    25%,50% {
        opacity: 1
    }

    90% {
        opacity: 0
    }

    99% {
        opacity: 0;
        -webkit-transform: translate(200%,-200%) rotate(2turn);
        transform: translate(200%,-200%) rotate(2turn)
    }
}

@keyframes fifty-fifty-shards-1 {
    0%,to {
        opacity: 0;
        -webkit-transform: translate(-200%,300%) rotate(-90deg);
        transform: translate(-200%,300%) rotate(-90deg)
    }

    25%,50% {
        opacity: 1
    }

    90% {
        opacity: 0
    }

    99% {
        opacity: 0;
        -webkit-transform: translate(200%,-200%) rotate(2turn);
        transform: translate(200%,-200%) rotate(2turn)
    }
}

@-webkit-keyframes fifty-fifty-shards-2 {
    0%,to {
        opacity: 0;
        -webkit-transform: translate(-200%,200%) rotate(-90deg);
        transform: translate(-200%,200%) rotate(-90deg)
    }

    25%,50% {
        opacity: 1
    }

    90% {
        opacity: 0
    }

    99% {
        opacity: 0;
        -webkit-transform: translate(400%,-200%) rotate(3turn);
        transform: translate(400%,-200%) rotate(3turn)
    }
}

@keyframes fifty-fifty-shards-2 {
    0%,to {
        opacity: 0;
        -webkit-transform: translate(-200%,200%) rotate(-90deg);
        transform: translate(-200%,200%) rotate(-90deg)
    }

    25%,50% {
        opacity: 1
    }

    90% {
        opacity: 0
    }

    99% {
        opacity: 0;
        -webkit-transform: translate(400%,-200%) rotate(3turn);
        transform: translate(400%,-200%) rotate(3turn)
    }
}

@-webkit-keyframes fifty-fifty-shards-3 {
    0%,to {
        opacity: 0;
        -webkit-transform: translate(-200%,-200%) rotate(-90deg);
        transform: translate(-200%,-200%) rotate(-90deg)
    }

    25%,50% {
        opacity: 1
    }

    90% {
        opacity: 0
    }

    99% {
        opacity: 0;
        -webkit-transform: translate(300%,200%) rotate(2turn);
        transform: translate(300%,200%) rotate(2turn)
    }
}

@keyframes fifty-fifty-shards-3 {
    0%,to {
        opacity: 0;
        -webkit-transform: translate(-200%,-200%) rotate(-90deg);
        transform: translate(-200%,-200%) rotate(-90deg)
    }

    25%,50% {
        opacity: 1
    }

    90% {
        opacity: 0
    }

    99% {
        opacity: 0;
        -webkit-transform: translate(300%,200%) rotate(2turn);
        transform: translate(300%,200%) rotate(2turn)
    }
}

@-webkit-keyframes fifty-fifty-shards-4 {
    0%,to {
        opacity: 0;
        -webkit-transform: translate(200%,-200%) rotate(-90deg);
        transform: translate(200%,-200%) rotate(-90deg)
    }

    25%,50% {
        opacity: 1
    }

    90% {
        opacity: 0
    }

    99% {
        opacity: 0;
        -webkit-transform: translate(-200%,200%) rotate(2turn);
        transform: translate(-200%,200%) rotate(2turn)
    }
}

@keyframes fifty-fifty-shards-4 {
    0%,to {
        opacity: 0;
        -webkit-transform: translate(200%,-200%) rotate(-90deg);
        transform: translate(200%,-200%) rotate(-90deg)
    }

    25%,50% {
        opacity: 1
    }

    90% {
        opacity: 0
    }

    99% {
        opacity: 0;
        -webkit-transform: translate(-200%,200%) rotate(2turn);
        transform: translate(-200%,200%) rotate(2turn)
    }
}

.seventy-thirty {
    padding-top: var(--widget-vertical-padding--mobile);
    padding-bottom: var(--widget-vertical-padding--mobile);
}

@media (min-width: 1024px) {
    .seventy-thirty {
        padding-top: var(--widget-vertical-padding--desktop);
        padding-bottom: var(--widget-vertical-padding--desktop);
    }
}

.seventy-thirty__inner {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-10);
}

@media (min-width: 1024px) {
    .seventy-thirty__inner {
        gap: var(--spacing-16);
        flex-direction: row;
    }
}

@media (min-width: 1280px) {
    .seventy-thirty__inner {
        gap: var(--spacing-20);
    }
}

.seventy-thirty__content-panel {
    flex: 1 1 60%;
}

@media (min-width: 1024px) {
    .seventy-thirty__text-block {
        max-width: 700px;
    }
}

.seventy-thirty__design-mark {
    margin-bottom: var(--spacing-8);
}

@media (min-width: 1024px) {
    .seventy-thirty__design-mark {
        margin-bottom: var(--spacing-10);
    }
}

.seventy-thirty__heading {
    font-size: var(--widget-font-size--mobile);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--spacing-5);
}

@media (min-width: 1024px) {
    .seventy-thirty__heading {
        font-size: var(--widget-font-size--desktop);
        margin-bottom: var(--spacing-8);
    }
}

.seventy-thirty__ctas {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-5);
    flex-direction: column;
    align-items: flex-start;
    margin-top: var(--spacing-8);
}

@media (min-width: 640px) {
    .seventy-thirty__ctas {
        align-items: center;
        flex-direction: row;
    }
}

.seventy-thirty__image-panel {
    flex: 1 1 40%;
    width: 100%;
    position: relative;
    align-self: center;
}

    .seventy-thirty__image-panel.is-grid {
        aspect-ratio: 628/570;
    }

@media (min-width: 1024px) {
    .seventy-thirty__image-panel {
        width: auto;
    }
}

.seventy-thirty__image-panel:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-image: var(--_chosen-pattern--mobile);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    pointer-events: none;
}

@media (min-width: 1024px) {
    .seventy-thirty__image-panel:after {
        background-image: var(--_chosen-pattern--desktop);
    }
}

.seventy-thirty__image-panel:not:has(.seventy-thirty__image:nth-child(2)) > div:first-child {
    grid-column: -1/1;
    grid-row: -1/1;
}

.seventy-thirty__image-panel:has(:nth-child(3 of .seventy-thirty__image)) {
    --_panel-width: 628;
    --_panel-height: 570;
}

    .seventy-thirty__image-panel:has(:nth-child(3 of .seventy-thirty__image))::after {
        top: auto;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        height: calc(64000% / var(--_panel-height));
        width: calc(73143% / var(--_panel-width));
    }

    .seventy-thirty__image-panel:has(:nth-child(3 of .seventy-thirty__image)) .seventy-thirty__image {
        position: absolute;
        width: calc(100% * var(--_image-width) / var(--_panel-width));
    }

        .seventy-thirty__image-panel:has(:nth-child(3 of .seventy-thirty__image)) .seventy-thirty__image:nth-child(1 of .seventy-thirty__image) {
            top: 0;
            left: 0;
            aspect-ratio: 346.51/266.93;
            --_image-width: 346.51;
        }

        .seventy-thirty__image-panel:has(:nth-child(3 of .seventy-thirty__image)) .seventy-thirty__image:nth-child(2 of .seventy-thirty__image) {
            top: calc(6033% / var(--_panel-height));
            right: 0;
            aspect-ratio: 262.95/355.66;
            --_image-width: 262.95;
        }

        .seventy-thirty__image-panel:has(:nth-child(3 of .seventy-thirty__image)) .seventy-thirty__image:nth-child(3 of .seventy-thirty__image) {
            bottom: 0;
            left: calc(9429% / var(--_panel-width));
            aspect-ratio: 251.38/283.41;
            --_image-width: 251.38;
        }

.seventy-thirty__video-panel {
    width: 100%;
    flex: 1 1 40%;
    position: relative;
    display: flex;
    align-items: center;
    align-self: center;
}

@media (min-width: 1024px) {
    .seventy-thirty__video-panel {
        width: auto;
    }
}

.seventy-thirty__image {
    display: flex;
    align-items: center;
    max-height: 100%;
    position: relative;
    opacity: 0;
    transform: scale(0.9);
    transition: all 0.75s ease;
}

    .seventy-thirty__image img {
        border-radius: var(--border-radius-lg);
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

.seventy-thirty__video {
    display: flex;
    align-items: center;
    flex-grow: 1;
    opacity: 0;
    transform: scale(0.9);
    transition: all 0.75s ease;
}

.seventy-thirty__image:nth-child(1) {
    grid-area: one;
}

    .seventy-thirty__image:nth-child(1):before {
        content: "";
        float: left;
        height: 0;
        margin-left: -1px;
        padding-top: 77.3195876289%;
        width: 1px;
    }

.seventy-thirty__image:nth-child(2) {
    grid-area: two;
    transition-delay: 0.25s;
}

    .seventy-thirty__image:nth-child(2):before {
        content: "";
        float: left;
        height: 0;
        margin-left: -1px;
        padding-top: 135.3741496599%;
        width: 1px;
    }

.seventy-thirty__image:nth-child(3) {
    grid-area: three;
    transition-delay: 0.5s;
}

    .seventy-thirty__image:nth-child(3):before {
        content: "";
        float: left;
        height: 0;
        margin-left: -1px;
        padding-top: 112.8571428571%;
        width: 1px;
    }

.seventy-thirty--reversed .seventy-thirty__content-panel {
    order: 1;
}

@media (min-width: 1024px) {
    .seventy-thirty--reversed .seventy-thirty__content-panel {
        order: 2;
    }
}

.seventy-thirty--reversed .seventy-thirty__image-panel {
    order: 2;
}

@media (min-width: 1024px) {
    .seventy-thirty--reversed .seventy-thirty__image-panel {
        order: 1;
    }
}

.seventy-thirty--reversed .seventy-thirty__video-panel {
    order: 2;
}

@media (min-width: 1024px) {
    .seventy-thirty--reversed .seventy-thirty__video-panel {
        order: 1;
    }
}

@media (min-width: 1024px) {
    .seventy-thirty--reversed .seventy-thirty__text-block {
        margin-left: auto;
    }
}

.seventy-thirty--svg .seventy-thirty__image-panel {
    display: flex;
}

    .seventy-thirty--svg .seventy-thirty__image-panel::after {
        background-image: var(--pattern-seventy-thirty-svg-foreground);
    }

.seventy-thirty--svg .seventy-thirty__image:nth-child(1) {
    margin-top: var(--spacing-16);
    margin-bottom: var(--spacing-2);
    width: 68.5714285714%;
    aspect-ratio: 1/1;
}

@media (min-width: 1024px) {
    .seventy-thirty--svg .seventy-thirty__image:nth-child(1) {
        margin-top: var(--spacing-28);
        margin-bottom: var(--spacing-4);
        width: 68.53625171%;
    }
}

.seventy-thirty--svg .seventy-thirty__image:nth-child(2) {
    position: absolute;
    top: 0;
    right: 0;
    width: 50.2857142857%;
    filter: drop-shadow(0 0 38px rgba(0,0,0,0.1));
    align-items: flex-start;
}

@media (min-width: 1024px) {
    .seventy-thirty--svg .seventy-thirty__image:nth-child(2) {
        width: 50.1366120219%;
    }
}

.seventy-thirty--svg .seventy-thirty__image:nth-child(2) img {
    position: relative;
    object-fit: contain;
}

.seventy-thirty .shard {
    display: block !important;
    position: absolute;
    z-index: 1;
    opacity: 0;
}

    .seventy-thirty .shard:nth-child(1 of .shard) {
        background: var(--colour-brand-tag-teal);
        top: -11%;
        left: 65%;
        width: 10%;
        aspect-ratio: 1/1;
        clip-path: polygon(50% 0,0% 100%,100% 100%);
        transform: rotate(-36deg);
        animation-name: seventy-thirty-shards-1;
        animation-duration: 20s;
        animation-timing-function: ease-out;
        animation-iteration-count: infinite;
    }

    .seventy-thirty .shard:nth-child(2 of .shard) {
        background: var(--colour-brand-tag-purple);
        top: 6%;
        left: 81%;
        width: 10%;
        aspect-ratio: 7/3;
        clip-path: polygon(30% 0,0% 100%,100% 100%);
        transform: rotate(48deg);
        animation-name: seventy-thirty-shards-2;
        animation-duration: 20s;
        animation-timing-function: ease-out;
        animation-iteration-count: infinite;
    }

    .seventy-thirty .shard:nth-child(3 of .shard) {
        background: var(--colour-brand-tag-teal);
        bottom: 7%;
        left: 59.5%;
        width: 12%;
        aspect-ratio: 5/3;
        clip-path: polygon(30% 0,0% 100%,100% 100%);
        transform: rotate(42deg);
        animation-name: seventy-thirty-shards-3;
        animation-duration: 20s;
        animation-timing-function: ease-out;
        animation-iteration-count: infinite;
    }

    .seventy-thirty .shard:nth-child(4 of .shard) {
        background: var(--colour-brand-tag-red);
        top: 43%;
        left: -0.5%;
        width: 15%;
        aspect-ratio: 8/4;
        clip-path: polygon(20% 0,0% 100%,100% 100%);
        transform: rotate(-78deg);
        animation-name: seventy-thirty-shards-4;
        animation-duration: 20s;
        animation-timing-function: ease-out;
        animation-iteration-count: infinite;
    }

.seventy-thirty__image-panel::after {
    display: none !important;
}

.in-view .seventy-thirty__image, .in-view .seventy-thirty__video {
    opacity: 1;
    transform: scale(1);
}

@keyframes seventy-thirty-shards-1 {
    0%,100% {
        opacity: 0;
        transform: translate(-200%,300%) rotate(-90deg);
    }

    25%,50% {
        opacity: 1;
    }

    90% {
        opacity: 0;
    }

    99% {
        opacity: 0;
        transform: translate(200%,-200%) rotate(720deg);
    }
}

@keyframes seventy-thirty-shards-2 {
    0%,100% {
        opacity: 0;
        transform: translate(-200%,200%) rotate(-90deg);
    }

    25%,50% {
        opacity: 1;
    }

    90% {
        opacity: 0;
    }

    99% {
        opacity: 0;
        transform: translate(400%,-200%) rotate(1080deg);
    }
}

@keyframes seventy-thirty-shards-3 {
    0%,100% {
        opacity: 0;
        transform: translate(-200%,-200%) rotate(-90deg);
    }

    25%,50% {
        opacity: 1;
    }

    90% {
        opacity: 0;
    }

    99% {
        opacity: 0;
        transform: translate(300%,200%) rotate(720deg);
    }
}

@keyframes seventy-thirty-shards-4 {
    0%,100% {
        opacity: 0;
        transform: translate(200%,-200%) rotate(-90deg);
    }

    25%,50% {
        opacity: 1;
    }

    90% {
        opacity: 0;
    }

    99% {
        opacity: 0;
        transform: translate(-200%,200%) rotate(720deg);
    }
}

.horizontal-benefits {
    --_gap: var(--spacing-8);
    --_chosen-pattern--mobile: null;
    --_chosen-pattern--desktop: var(--pattern-bg-4--desktop);
    --_text-colour: var(--colour-text-base);
    isolation: isolate;
    padding-bottom: var(--widget-vertical-padding--mobile);
    padding-top: var(--widget-vertical-padding--mobile);
    position: relative
}

@media (min-width: 1024px) {
    .horizontal-benefits {
        --_gap: var(--spacing-10);
        padding-bottom: var(--widget-vertical-padding--desktop);
        padding-top: var(--widget-vertical-padding--desktop)
    }
}

.horizontal-benefits:after {
    background-image: var(--_chosen-pattern--mobile);
    background-position: top;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: var(--z-neg-10)
}

@media (min-width: 768px) {
    .horizontal-benefits:after {
        background-image: var(--_chosen-pattern--desktop)
    }
}

.horizontal-benefits__header {
    margin: auto;
    margin-bottom: var(--spacing-12);
    max-width: var(--max-w-xl)
}

@media (min-width: 1024px) {
    .horizontal-benefits__header {
        margin-bottom: var(--spacing-20)
    }
}

.horizontal-benefits__design-mark {
    margin: auto;
    margin-bottom: var(--spacing-8)
}

.horizontal-benefits__heading {
    color: var(--_text-colour);
    font-size: var(--widget-font-size--mobile);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-md);
    margin-bottom: var(--spacing-5);
    text-align: center
}

@media (min-width: 1024px) {
    .horizontal-benefits__heading {
        font-size: var(--widget-font-size--desktop);
        margin-bottom: var(--spacing-8)
    }
}

.horizontal-benefits__intro {
    color: var(--_text-colour);
    line-height: var(--line-height-2xl);
    text-align: center
}

.horizontal-benefits__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--_gap);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media (min-width: 1024px) {
    .horizontal-benefits__wrap {
        gap: var(--_gap)
    }
}

.horizontal-benefits-item {
    background-color: var(--colour-bg-white);
    border-radius: var(--border-radius-md);
    -webkit-box-shadow: 0 0 0 2px var(--colour-bg-contrast);
    box-shadow: 0 0 0 2px var(--colour-bg-contrast);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    position: relative;
    -webkit-transition: .25s;
    transition: .25s;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

    .horizontal-benefits-item:hover {
        -webkit-box-shadow: 0 4px 42px rgba(0,0,0,.12);
        box-shadow: 0 4px 42px rgba(0,0,0,.12)
    }

@media (min-width: 1024px) {
    .horizontal-benefits__wrap--cols-2 .horizontal-benefits-item {
        width: calc(50% - var(--_gap) / 2 * 1)
    }

    .horizontal-benefits__wrap--cols-3 .horizontal-benefits-item, .horizontal-benefits__wrap--cols-4 .horizontal-benefits-item {
        width: calc(33.3333333333% - var(--_gap) / 3 * 2)
    }
}

@media (min-width: 1280px) {
    .horizontal-benefits__wrap--cols-4 .horizontal-benefits-item {
        width: calc(25% - var(--_gap) / 4 * 3)
    }
}

@media (min-width: 768px) {
    .horizontal-benefits-item {
        width: calc(50% - var(--_gap) / 2 * 1)
    }
}

.horizontal-benefits-item:after {
    background-color: var(--colour-bg-primary);
    content: "";
    height: var(--h-3);
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
    -webkit-transition: .4s ease;
    transition: .4s ease;
    z-index: var(--z-10)
}

@media (min-width: 1024px) {
    .horizontal-benefits-item:after {
        -webkit-transform: scaleY(0);
        -ms-transform: scaleY(0);
        transform: scaleY(0)
    }
}

.horizontal-benefits-item:hover:after {
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1)
}

.horizontal-benefits-item__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    margin: auto;
    max-width: 100%;
    padding: var(--spacing-12) var(--spacing-5);
    width: var(--max-w-xs);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media (min-width: 1024px) {
    .horizontal-benefits-item__inner {
        padding: var(--spacing-15) var(--spacing-5)
    }
}

.horizontal-benefits-item--icon .horizontal-benefits-item__inner, .horizontal-benefits-item--image .horizontal-benefits-item__inner {
    padding-top: var(--spacing-8)
}

.horizontal-benefits-item__inner .btn {
    margin-top: auto
}

.horizontal-benefits-item__heading {
    color: var(--_text-colour);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-lg);
    margin-bottom: var(--spacing-8);
    text-align: center
}

.horizontal-benefits-item__description {
    color: var(--_text-colour);
    line-height: var(--line-height-2xl);
    margin-bottom: var(--spacing-6);
    text-align: center
}

.horizontal-benefits-item__icon {
    margin: auto;
    margin-top: var(--spacing-8)
}

.horizontal-benefits-item__image {
    aspect-ratio: 350/229;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.horizontal-benefits-item__ctas {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    gap: var(--spacing-5) var(--spacing-2-half);
    justify-content: center
}

.testimonials {
    --_chosen-pattern--mobile: none;
    --_chosen-pattern--desktop: none;
    padding-top: var(--widget-vertical-padding--mobile);
    padding-bottom: var(--widget-vertical-padding--mobile);
    overflow: hidden;
    position: relative;
    isolation: isolate;
}

@media (min-width: 1024px) {
    .testimonials {
        padding-top: var(--widget-vertical-padding--desktop);
        padding-bottom: var(--widget-vertical-padding--desktop);
    }
}

.testimonials::before {
    content: "";
    position: absolute;
    left: 0;
    top: var(--spacing-28);
    right: 0;
    aspect-ratio: 390/225;
    background-image: var(--_chosen-pattern--mobile);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top center;
    z-index: var(--z-neg-10);
    pointer-events: none;
}

@media (min-width: 1024px) {
    .testimonials::before {
        top: var(--spacing-14);
        aspect-ratio: 1440/616;
        background-image: var(--_chosen-pattern--desktop);
    }
}

.testimonials__inner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-10);
}

@media (min-width: 1024px) {
    .testimonials__inner {
        gap: 0px; 
      
    }
}

.testimonials__title {
    font-size: var(--widget-font-size--mobile);
    text-align: center;
    letter-spacing: var(--letter-spacing-tight);
}

@media (min-width: 1024px) {
    .testimonials__title {
        font-size: var(--widget-font-size--desktop);
    }
}

.testimonials__carousel {
    width: 100%;
    overflow: visible;
}

.testimonials .btn-control {
    display: none;
}

@media (min-width: 1024px) {
    .testimonials .btn-control {
        top: 50%;
        display: flex;
        position: absolute !important;
        z-index: 9999;
    }
}

.testimonials .btn-control--prev {
    left: 0;
}

.testimonials .btn-control--next {
    background: #FE7C02 !important;
    padding: 10px;
    right: 0rem;
}

.testimonial-large {
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 0 42px rgba(0,0,0,0.15);
    overflow: hidden;
}

@media (min-width: 1024px) {
    .testimonial-large {
        box-shadow: 0 0 64px rgba(0,0,0,0.15);
        max-width: 768px;
        margin: 0 auto;
    }
}

@media (min-width: 1440px) {
    .testimonial-large {
        max-width: 994px;
    }
}

.testimonial-large__inner {
    display: flex;
    flex-direction: column;
    gap: 48px;
}

@media (min-width: 1024px) {
    .testimonial-large__inner {
        flex-direction: row;
        gap: 0;
    }
}

.testimonial-large__inner:not(:has(.testimonial-large__image)) {
    aspect-ratio: 990/500;
    padding-bottom: var(--spacing-8);
}

@media (min-width: 1280px) {
    .testimonial-large__inner:not(:has(.testimonial-large__image)) {
        padding-bottom: 0;
        padding-right: calc(var(--spacing-14));
    }
}

.testimonial-large__content {
    padding-top: var(--spacing-8);
    padding-left: var(--spacing-5);
    padding-right: var(--spacing-5);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

@media (min-width: 1024px) {
    .testimonial-large__content {
        position: relative;
        padding-top: 7.5rem;
        padding-bottom: 3rem;
        padding-left: var(--spacing-14);
        gap: 40px;
        flex: 1 1 400px;
        contain: size;
    }
}

@media (min-width: 1280px) {
    .testimonial-large__content {
        padding-left: 6rem;
    }
}

.testimonial-large .icon-quotemark {
    color: var(--colour-brand-primary);
    margin-bottom: var(--spacing-2-half);
    font-size: var(--font-size-2xl);
}

@media (min-width: 1024px) {
    .testimonial-large .icon-quotemark {
        position: absolute;
        top: 0;
        left: 0;
        margin-left: 2rem;
        margin-top: 2rem;
        font-size: 2rem;
        color: #fe7c02;
    }
}

.testimonial-large__description {
}

    .testimonial-large__description::-webkit-scrollbar {
        width: 2px;
    }

    .testimonial-large__description::-webkit-scrollbar-thumb {
        background: black;
    }

    .testimonial-large__description::-webkit-scrollbar-track {
        background: rgba(0,0,0,0.3);
    }

@media (min-width: 1024px) {
    .testimonial-large__description {
        padding-right: 15px;
        overflow: auto;
    }
}

.testimonial-large__description h3 {
    line-height: var(--line-height-sm);
}

.testimonial-large__author-details {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-2-half);
}

.testimonial-large__author {
    font-weight: bold;
    color: #fe7c02;
}

.testimonial-large__company {
    opacity: 0.5; 
    color: #fe7c02;
}

.testimonial-large__image {
    position: relative;
    width: 100%;
    aspect-ratio: 1/1;
}

@media (min-width: 1024px) {
    .testimonial-large__image {
        flex-shrink: 0;
        aspect-ratio: 435/500;
        flex: 1 1 435px;
        max-width: 44%;
    }
}
section.sector_section {
    margin-top: 3rem;
    margin-bottom: 5rem;
}
.testimonial-large__image img {
    position: absolute;
    top: 1px;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.lister-carousel {
    --_chosen-pattern--desktop: var(--pattern-bg-2--desktop);
    --_chosen-pattern--mobile: null;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    padding-bottom: var(--widget-vertical-padding--mobile);
    padding-top: var(--widget-vertical-padding--mobile);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-12);
    isolation: isolate;
    position: relative
}

@media (min-width: 1024px) {
    .lister-carousel {
        gap: var(--spacing-15);
        padding-bottom: var(--widget-vertical-padding--desktop);
        padding-top: var(--widget-vertical-padding--desktop)
    }
}

.lister-carousel:after {
    aspect-ratio: 390/95;
    background: var(--_chosen-pattern--mobile);
    content: "";
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width: 1024px) {
    .lister-carousel:after {
        aspect-ratio: 1440/616;
        background: var(--_chosen-pattern--desktop);
        background-position: top;
        background-repeat: no-repeat;
        background-size: contain;
        max-height: calc(100% - 40px);
        pointer-events: none;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        z-index: var(--z-neg-10)
    }
}

.lister-carousel__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-14)
}

@media (min-width: 1024px) {
    .lister-carousel__inner {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .lister-carousel__text-block {
        padding-top: var(--spacing-10);
        -webkit-box-flex: 2;
        -ms-flex: 2;
        flex: 2
    }
}

.lister-carousel__text-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-5)
}

@media (min-width: 1024px) {
    .lister-carousel__text-inner {
        max-width: 420px
    }
}

.lister-carousel__text-inner .design-mark {
    margin-bottom: var(--spacing-2-half)
}

.lister-carousel__title {
    font-size: var(--widget-font-size--mobile);
    font-weight: var(--font-weight-bold)
}

@media (min-width: 1024px) {
    .lister-carousel__title {
        font-size: var(--widget-font-size--desktop);
        padding-right: var(--spacing-10)
    }
}

.lister-carousel__carousel {
    gap: var(--spacing-12);
    margin-top: calc(-1 * var(--spacing-5));
    overflow: hidden !important;
    padding-top: var(--spacing-14)
}

@media (min-width: 1024px) {
    .lister-carousel__carousel {
        margin-top: calc(-1 * var(--spacing-4));
        padding-left: 0;
        padding-top: var(--spacing-20);
        -webkit-box-flex: 3;
        -ms-flex: 3;
        flex: 3;
        gap: var(--spacing-15)
    }
}

.lister-carousel__controls .carousel-controls__arrows {
    display: none
}

@media (min-width: 1024px) {
    .lister-carousel__controls .carousel-controls__arrows {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .lister-carousel__controls {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%
    }

        .lister-carousel__controls .carousel-bullets {
            -webkit-box-pack: start;
            -ms-flex-pack: start;
            justify-content: flex-start
        }
}

.lister-carousel .swiper-wrapper {
    max-height: 340px;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

@media (min-width: 1024px) {
    .lister-carousel .swiper-wrapper {
        max-height: 385px
    }
}

.lister-carousel .swiper-slide:not(:last-child) {
    margin-right: var(--spacing-2-half)
}

.lister-carousel .card__image:after {
    background: #000;
    opacity: .5
}

.call-to-action {
    --_chosen-pattern--mobile: var(--pattern-bg-3--mobile);
    --_chosen-pattern--desktop: var(--pattern-bg-5--desktop);
    isolation: isolate;
    padding-bottom: var(--widget-vertical-padding--mobile);
    padding-top: var(--widget-vertical-padding--mobile);
    position: relative
}

@media (min-width: 1024px) {
    .call-to-action {
        padding: var(--spacing-24) 0
    }
}

.call-to-action:after {
    background-image: var(--_chosen-pattern--mobile);
    background-position: top;
    background-repeat: no-repeat;
    background-size: 100% auto;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0
}

@media (min-width: 640px) {
    .call-to-action:after {
        background-image: var(--_chosen-pattern--desktop);
        background-size: contain
    }
}

.call-to-action__wrap {
    background-color: #fff;
    border-radius: var(--border-radius-md);
    -webkit-box-shadow: 0 0 64px 0 rgba(0,0,0,.15);
    box-shadow: 0 0 64px 0 rgba(0,0,0,.15);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: auto;
    padding: var(--spacing-10) var(--spacing-5);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-8);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media (min-width: 1024px) {
    .call-to-action__wrap {
        padding: var(--spacing-12) var(--spacing-28)
    }
}

.call-to-action__icon {
    width: 60px
}

@media (min-width: 1024px) {
    .call-to-action__icon {
        width: 96px
    }
}

.call-to-action__heading {
    background: radial-gradient(transparent,#fff);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semibold);
    letter-spacing: var(--letter-spacing-tight);
    margin-bottom: calc(-1 * var(--spacing-2));
    margin-top: calc(-1 * var(--spacing-2));
    max-width: 36ch;
    padding: var(--spacing-2);
    text-align: center;
    z-index: 1
}

    .call-to-action__heading .text-primary {
        font-weight: var(--font-weight-bold)
    }

@media (min-width: 1024px) {
    .call-to-action__heading {
        font-size: var(--font-size-5xl)
    }
}

.call-to-action__heading strong {
    color: var(--colour-brand-primary);
    font-weight: var(--font-weight-bold)
}

.call-to-action__buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--spacing-5);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    z-index: 1
}

@media (min-width: 1024px) {
    .call-to-action__buttons {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
}

:root {
    --swiper-theme-color: #007aff
}

.swiper {
    list-style: none;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    padding: 0;
    position: relative;
    z-index: 1
}

.swiper-vertical>.swiper-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.swiper-wrapper {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    position: relative;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    width: 100%;
    z-index: 1
}

.swiper-android .swiper-slide,
.swiper-wrapper {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.swiper-pointer-events {
    -ms-touch-action: pan-y;
    touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
    -ms-touch-action: pan-x;
    touch-action: pan-x
}

.swiper-slide {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    height: 100%;
    position: relative;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    width: 100%
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform
}

.swiper-backface-hidden .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.swiper-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
    -webkit-perspective: 1200px;
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-wrapper {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, .5)), to(transparent));
    background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(transparent));
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .5)), to(transparent));
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .5)), to(transparent));
    background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper:before {
    content: "";
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-ordinal-group: 10000;
    -ms-flex-order: 9999;
    order: 9999
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-start: var(--swiper-centered-offset-before);
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    height: 100%;
    width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-before: var(--swiper-centered-offset-before);
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    height: var(--swiper-centered-offset-after);
    width: 100%
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-fade.swiper-free-mode .swiper-slide {
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    -webkit-transition-property: opacity;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.flatpickr-calendar {
    -webkit-animation: none;
    animation: none;
    background: transparent;
    background: #fff;
    border: 0;
    border-radius: 5px;
    -webkit-box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, .08);
    box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, .08);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    direction: ltr;
    display: none;
    font-size: 14px;
    line-height: 24px;
    opacity: 0;
    padding: 0;
    position: absolute;
    text-align: center;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    visibility: hidden;
    width: 307.875px
}

.flatpickr-calendar.inline,
.flatpickr-calendar.open {
    max-height: 640px;
    opacity: 1;
    visibility: visible
}

.flatpickr-calendar.open {
    display: inline-block;
    z-index: 99999
}

.flatpickr-calendar.animate.open {
    -webkit-animation: fpFadeInDown .3s cubic-bezier(.23, 1, .32, 1);
    animation: fpFadeInDown .3s cubic-bezier(.23, 1, .32, 1)
}

.flatpickr-calendar.inline {
    display: block;
    position: relative;
    top: 2px
}

.flatpickr-calendar.static {
    position: absolute;
    top: calc(100% + 2px)
}

.flatpickr-calendar.static.open {
    display: block;
    z-index: 999
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
    -webkit-box-shadow: none !important;
    box-shadow: none !important
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
    -webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
    box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6
}

.flatpickr-calendar .hasTime .dayContainer,
.flatpickr-calendar .hasWeeks .dayContainer {
    border-bottom: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.flatpickr-calendar .hasWeeks .dayContainer {
    border-left: 0
}

.flatpickr-calendar.hasTime .flatpickr-time {
    border-top: 1px solid #e6e6e6;
    height: 40px
}

.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
    height: auto
}

.flatpickr-calendar:after,
.flatpickr-calendar:before {
    border: solid transparent;
    content: "";
    display: block;
    height: 0;
    left: 22px;
    pointer-events: none;
    position: absolute;
    width: 0
}

.flatpickr-calendar.arrowRight:after,
.flatpickr-calendar.arrowRight:before,
.flatpickr-calendar.rightMost:after,
.flatpickr-calendar.rightMost:before {
    left: auto;
    right: 22px
}

.flatpickr-calendar.arrowCenter:after,
.flatpickr-calendar.arrowCenter:before {
    left: 50%;
    right: 50%
}

.flatpickr-calendar:before {
    border-width: 5px;
    margin: 0 -5px
}

.flatpickr-calendar:after {
    border-width: 4px;
    margin: 0 -4px
}

.flatpickr-calendar.arrowTop:after,
.flatpickr-calendar.arrowTop:before {
    bottom: 100%
}

.flatpickr-calendar.arrowTop:before {
    border-bottom-color: #e6e6e6
}

.flatpickr-calendar.arrowTop:after {
    border-bottom-color: #fff
}

.flatpickr-calendar.arrowBottom:after,
.flatpickr-calendar.arrowBottom:before {
    top: 100%
}

.flatpickr-calendar.arrowBottom:before {
    border-top-color: #e6e6e6
}

.flatpickr-calendar.arrowBottom:after {
    border-top-color: #fff
}

.flatpickr-calendar:focus {
    outline: 0
}

.flatpickr-wrapper {
    display: inline-block;
    position: relative
}

.flatpickr-months {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.flatpickr-months .flatpickr-month {
    background: transparent;
    line-height: 1;
    overflow: hidden;
    position: relative;
    text-align: center;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.flatpickr-months .flatpickr-month,
.flatpickr-months .flatpickr-next-month,
.flatpickr-months .flatpickr-prev-month {
    color: rgba(0, 0, 0, .9);
    fill: rgba(0, 0, 0, .9);
    height: 34px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.flatpickr-months .flatpickr-next-month,
.flatpickr-months .flatpickr-prev-month {
    cursor: pointer;
    padding: 10px;
    position: absolute;
    text-decoration: none;
    top: 0;
    z-index: 3
}

.flatpickr-months .flatpickr-next-month.flatpickr-disabled,
.flatpickr-months .flatpickr-prev-month.flatpickr-disabled {
    display: none
}

.flatpickr-months .flatpickr-next-month i,
.flatpickr-months .flatpickr-prev-month i {
    position: relative
}

.flatpickr-months .flatpickr-next-month.flatpickr-prev-month,
.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month {
    left: 0
}

.flatpickr-months .flatpickr-next-month.flatpickr-next-month,
.flatpickr-months .flatpickr-prev-month.flatpickr-next-month {
    right: 0
}

.flatpickr-months .flatpickr-next-month:hover,
.flatpickr-months .flatpickr-prev-month:hover {
    color: #959ea9
}

.flatpickr-months .flatpickr-next-month:hover svg,
.flatpickr-months .flatpickr-prev-month:hover svg {
    fill: #f64747
}

.flatpickr-months .flatpickr-next-month svg,
.flatpickr-months .flatpickr-prev-month svg {
    height: 14px;
    width: 14px
}

.flatpickr-months .flatpickr-next-month svg path,
.flatpickr-months .flatpickr-prev-month svg path {
    -webkit-transition: fill .1s;
    transition: fill .1s;
    fill: inherit
}

.numInputWrapper {
    height: auto;
    position: relative
}

.numInputWrapper input,
.numInputWrapper span {
    display: inline-block
}

.numInputWrapper input {
    width: 100%
}

.numInputWrapper input::-ms-clear {
    display: none
}

.numInputWrapper input::-webkit-inner-spin-button,
.numInputWrapper input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.numInputWrapper span {
    border: 1px solid rgba(57, 57, 57, .15);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
    height: 50%;
    line-height: 50%;
    opacity: 0;
    padding: 0 4px 0 2px;
    position: absolute;
    right: 0;
    width: 14px
}

.numInputWrapper span:hover {
    background: rgba(0, 0, 0, .1)
}

.numInputWrapper span:active {
    background: rgba(0, 0, 0, .2)
}

.numInputWrapper span:after {
    content: "";
    display: block;
    position: absolute
}

.numInputWrapper span.arrowUp {
    border-bottom: 0;
    top: 0
}

.numInputWrapper span.arrowUp:after {
    border-bottom: 4px solid rgba(57, 57, 57, .6);
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    top: 26%
}

.numInputWrapper span.arrowDown {
    top: 50%
}

.numInputWrapper span.arrowDown:after {
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid rgba(57, 57, 57, .6);
    top: 40%
}

.numInputWrapper span svg {
    height: auto;
    width: inherit
}

.numInputWrapper span svg path {
    fill: rgba(0, 0, 0, .5)
}

.numInputWrapper:hover {
    background: rgba(0, 0, 0, .05)
}

.numInputWrapper:hover span {
    opacity: 1
}

.flatpickr-current-month {
    color: inherit;
    display: inline-block;
    font-size: 135%;
    font-weight: 300;
    height: 34px;
    left: 12.5%;
    line-height: inherit;
    line-height: 1;
    padding: 7.48px 0 0;
    position: absolute;
    text-align: center;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    width: 75%
}

.flatpickr-current-month span.cur-month {
    color: inherit;
    display: inline-block;
    font-family: inherit;
    font-weight: 700;
    margin-left: .5ch;
    padding: 0
}

.flatpickr-current-month span.cur-month:hover {
    background: rgba(0, 0, 0, .05)
}

.flatpickr-current-month .numInputWrapper {
    display: inline-block;
    width: 6ch;
    width: 7ch\0
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
    border-bottom-color: rgba(0, 0, 0, .9)
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
    border-top-color: rgba(0, 0, 0, .9)
}

.flatpickr-current-month input.cur-year {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
    background: transparent;
    border: 0;
    border-radius: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: inherit;
    cursor: text;
    display: inline-block;
    font-family: inherit;
    font-size: inherit;
    font-weight: 300;
    height: auto;
    line-height: inherit;
    margin: 0;
    padding: 0 0 0 .5ch;
    vertical-align: initial
}

.flatpickr-current-month input.cur-year:focus {
    outline: 0
}

.flatpickr-current-month input.cur-year[disabled],
.flatpickr-current-month input.cur-year[disabled]:hover {
    background: transparent;
    color: rgba(0, 0, 0, .5);
    font-size: 100%;
    pointer-events: none
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
    appearance: menulist;
    -webkit-appearance: menulist;
    -moz-appearance: menulist;
    background: transparent;
    border: none;
    border-radius: 0;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    color: inherit;
    cursor: pointer;
    font-family: inherit;
    font-size: inherit;
    font-weight: 300;
    height: auto;
    line-height: inherit;
    margin: -1px 0 0;
    outline: none;
    padding: 0 0 0 .5ch;
    position: relative;
    vertical-align: initial;
    width: auto
}

.flatpickr-current-month .flatpickr-monthDropdown-months:active,
.flatpickr-current-month .flatpickr-monthDropdown-months:focus {
    outline: none
}

.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
    background: rgba(0, 0, 0, .05)
}

.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
    background-color: transparent;
    outline: none;
    padding: 0
}

.flatpickr-weekdays {
    background: transparent;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    text-align: center;
    width: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 28px
}

.flatpickr-weekdays .flatpickr-weekdaycontainer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

span.flatpickr-weekday {
    background: transparent;
    color: rgba(0, 0, 0, .54);
    cursor: default;
    display: block;
    font-size: 90%;
    line-height: 1;
    margin: 0;
    text-align: center;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-weight: bolder
}

.dayContainer,
.flatpickr-weeks {
    padding: 1px 0 0
}

.flatpickr-days {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    position: relative;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    width: 307.875px
}

.flatpickr-days:focus {
    outline: 0
}

.dayContainer {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    max-width: 307.875px;
    min-width: 307.875px;
    outline: 0;
    padding: 0;
    text-align: left;
    width: 307.875px;
    -ms-flex-pack: justify;
    justify-content: space-around;
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dayContainer+.dayContainer {
    -webkit-box-shadow: -1px 0 0 #e6e6e6;
    box-shadow: -1px 0 0 #e6e6e6
}

.flatpickr-day {
    background: none;
    border: 1px solid transparent;
    border-radius: 150px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #393939;
    cursor: pointer;
    font-weight: 400;
    width: 14.2857143%;
    -ms-flex-preferred-size: 14.2857143%;
    display: inline-block;
    flex-basis: 14.2857143%;
    height: 39px;
    line-height: 39px;
    margin: 0;
    max-width: 39px;
    position: relative;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center
}

.flatpickr-day.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day.nextMonthDay:focus,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.prevMonthDay:focus,
.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.today.inRange,
.flatpickr-day:focus,
.flatpickr-day:hover {
    background: #e6e6e6;
    border-color: #e6e6e6;
    cursor: pointer;
    outline: 0
}

.flatpickr-day.today {
    border-color: #959ea9
}

.flatpickr-day.today:focus,
.flatpickr-day.today:hover {
    background: #959ea9;
    border-color: #959ea9;
    color: #fff
}

.flatpickr-day.endRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.endRange.nextMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.endRange:focus,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected,
.flatpickr-day.selected.inRange,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.selected:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.startRange:focus,
.flatpickr-day.startRange:hover {
    background: #569ff7;
    border-color: #569ff7;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #fff
}

.flatpickr-day.endRange.startRange,
.flatpickr-day.selected.startRange,
.flatpickr-day.startRange.startRange {
    border-radius: 50px 0 0 50px
}

.flatpickr-day.endRange.endRange,
.flatpickr-day.selected.endRange,
.flatpickr-day.startRange.endRange {
    border-radius: 0 50px 50px 0
}

.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)),
.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),
.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)) {
    -webkit-box-shadow: -10px 0 0 #569ff7;
    box-shadow: -10px 0 0 #569ff7
}

.flatpickr-day.endRange.startRange.endRange,
.flatpickr-day.selected.startRange.endRange,
.flatpickr-day.startRange.startRange.endRange {
    border-radius: 50px
}

.flatpickr-day.inRange {
    border-radius: 0;
    -webkit-box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
    box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.nextMonthDay,
.flatpickr-day.notAllowed,
.flatpickr-day.notAllowed.nextMonthDay,
.flatpickr-day.notAllowed.prevMonthDay,
.flatpickr-day.prevMonthDay {
    background: transparent;
    border-color: transparent;
    color: rgba(57, 57, 57, .3);
    cursor: default
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
    color: rgba(57, 57, 57, .1);
    cursor: not-allowed
}

.flatpickr-day.week.selected {
    border-radius: 0;
    -webkit-box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
    box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7
}

.flatpickr-day.hidden {
    visibility: hidden
}

.rangeMode .flatpickr-day {
    margin-top: 1px
}

.flatpickr-weekwrapper {
    float: left
}

.flatpickr-weekwrapper .flatpickr-weeks {
    -webkit-box-shadow: 1px 0 0 #e6e6e6;
    box-shadow: 1px 0 0 #e6e6e6;
    padding: 0 12px
}

.flatpickr-weekwrapper .flatpickr-weekday {
    float: none;
    line-height: 28px;
    width: 100%
}

.flatpickr-weekwrapper span.flatpickr-day,
.flatpickr-weekwrapper span.flatpickr-day:hover {
    background: transparent;
    border: none;
    color: rgba(57, 57, 57, .3);
    cursor: default;
    display: block;
    max-width: none;
    width: 100%
}

.flatpickr-innerContainer {
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden
}

.flatpickr-innerContainer,
.flatpickr-rContainer {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.flatpickr-rContainer {
    display: inline-block;
    padding: 0
}

.flatpickr-time {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 0;
    line-height: 40px;
    max-height: 40px;
    outline: 0;
    overflow: hidden;
    text-align: center
}

.flatpickr-time:after {
    clear: both;
    content: "";
    display: table
}

.flatpickr-time .numInputWrapper {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    float: left;
    height: 40px;
    width: 40%
}

.flatpickr-time .numInputWrapper span.arrowUp:after {
    border-bottom-color: #393939
}

.flatpickr-time .numInputWrapper span.arrowDown:after {
    border-top-color: #393939
}

.flatpickr-time.hasSeconds .numInputWrapper {
    width: 26%
}

.flatpickr-time.time24hr .numInputWrapper {
    width: 49%
}

.flatpickr-time input {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
    background: transparent;
    border: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #393939;
    font-size: 14px;
    height: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0;
    position: relative;
    text-align: center
}

.flatpickr-time input.flatpickr-hour {
    font-weight: 700
}

.flatpickr-time input.flatpickr-minute,
.flatpickr-time input.flatpickr-second {
    font-weight: 400
}

.flatpickr-time input:focus {
    border: 0;
    outline: 0
}

.flatpickr-time .flatpickr-am-pm,
.flatpickr-time .flatpickr-time-separator {
    -webkit-align-self: center;
    color: #393939;
    float: left;
    font-weight: 700;
    height: inherit;
    line-height: inherit;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 2%;
    -ms-flex-item-align: center;
    align-self: center
}

.flatpickr-time .flatpickr-am-pm {
    cursor: pointer;
    font-weight: 400;
    outline: 0;
    text-align: center;
    width: 18%
}

.flatpickr-time .flatpickr-am-pm:focus,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time input:focus,
.flatpickr-time input:hover {
    background: #eee
}

.flatpickr-input[readonly] {
    cursor: pointer
}

@-webkit-keyframes fpFadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fpFadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@-webkit-keyframes highlight-fill {
    0% {
        background-size: 0 100%
    }
    to {
        background-size: 100% 100%
    }
}

@keyframes highlight-fill {
    0% {
        background-size: 0 100%
    }
    to {
        background-size: 100% 100%
    }
}

@-webkit-keyframes shake-y {
    0%,
    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    20% {
        -webkit-transform: translateY(-15%);
        transform: translateY(-15%)
    }
    40% {
        -webkit-transform: translateY(15%);
        transform: translateY(15%)
    }
    60% {
        -webkit-transform: translateY(-15%);
        transform: translateY(-15%)
    }
    80% {
        -webkit-transform: translateY(15%);
        transform: translateY(15%)
    }
}

@keyframes shake-y {
    0%,
    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    20% {
        -webkit-transform: translateY(-15%);
        transform: translateY(-15%)
    }
    40% {
        -webkit-transform: translateY(15%);
        transform: translateY(15%)
    }
    60% {
        -webkit-transform: translateY(-15%);
        transform: translateY(-15%)
    }
    80% {
        -webkit-transform: translateY(15%);
        transform: translateY(15%)
    }
}

@-webkit-keyframes pulse {
    0% {
        opacity: 1;
        -webkit-transform: scale(0);
        transform: scale(0)
    }
    to {
        opacity: 0;
        -webkit-transform: scale(2.5);
        transform: scale(2.5)
    }
}

@keyframes pulse {
    0% {
        opacity: 1;
        -webkit-transform: scale(0);
        transform: scale(0)
    }
    to {
        opacity: 0;
        -webkit-transform: scale(2.5);
        transform: scale(2.5)
    }
}

:root {
    --icon-envelope: "";
    --icon-checkmark-circle: "";
    --icon-calendar: "";
    --icon-play-circle: "";
    --icon-clock: "";
    --icon-computer: "";
    --icon-star: "";
    --icon-quotemark: "";
    --icon-promo-badge: "";
    --icon-minus: "";
    --icon-plus: "";
    --icon-chevron-down: "";
    --icon-chevron-left: "";
    --icon-chevron-right: "";
    --icon-house-stroke: "";
    --icon-phone-stroke: "";
    --icon-enlarge: "";
    --icon-cross: "";
    --icon-checkmark: "";
    --icon-play: "";
    --icon-arrow-right: "";
    --icon-arrow-left: "";
    --icon-facebook: "";
    --icon-twitter: "";
    --icon-youtube: "";
    --icon-linkedin: "";
    --icon-mintsoft-ol: "";
    --icon-unleashed-checkmark: "";
    --icon-xtwitter: "";
    --icon-contact: "";
    --icon-basket: "";
    --icon-bin: "";
    --icon-month: "";
    --icon-user: "";
    --icon-rounded-checkmark: ""
}

@font-face {
    font-display: block;
    font-family: icomoon;
    font-style: normal;
    font-weight: 400;
    src: url(/fonts/icomoon.ttf?oddmu2) format("truetype"), url(/fonts/icomoon.woff?oddmu2) format("woff"), url(/fonts/icomoon.svg?oddmu2#icomoon) format("svg")
}

i {
    font-family: icomoon;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.icon-user:before {
    content: "\e917"
}

.icon-month:before {
    content: "\e916"
}

.icon-bin:before {
    content: "\e915"
}

.icon-contact:before {
    content: "\e913"
}

.icon-basket:before {
    content: "\e914"
}

.icon-xtwitter:before {
    content: "\e912"
}

.icon-unleashed-checkmark:before {
    content: "\e911"
}

.icon-mintsoft-ol {
    content: "\e910"
}

.icon-envelope:before {
    content: "\e90f"
}

.icon-checkmark-circle:before {
    content: "\e90e"
}

.icon-calendar:before {
    content: "\e90d"
}

.icon-play-circle:before {
    content: "\e90c"
}

.icon-clock:before {
    content: "\e90b"
}

.icon-computer:before {
    content: "\e909"
}

.icon-star:before {
    content: "\e90a"
}

.icon-quotemark:before {
    content: "\e908"
}

.icon-promo-badge:before {
    content: "\e907"
}

.icon-minus:before {
    content: "\e903"
}

.icon-plus:before {
    content: "\e904"
}

.icon-chevron-down:before {
    content: "\e900"
}

.icon-chevron-left:before {
    content: "\e901"
}

.icon-chevron-right:before {
    content: "\e902"
}

.icon-house-stroke:before {
    content: "\e905"
}

.icon-phone-stroke:before {
    content: "\e906"
}

.icon-enlarge:before {
    content: "\e989"
}

.icon-cross:before {
    content: "\ea0f"
}

.icon-checkmark:before {
    content: "\ea10"
}

.icon-play:before {
    content: "\ea1c"
}

.icon-arrow-right:before {
    content: "\ea3c"
}

.icon-arrow-left:before {
    content: "\ea3d"
}

.icon-facebook:before {
    content: "\ea90"
}

.icon-twitter:before {
    content: "\ea96"
}

.icon-youtube:before {
    content: "\ea9d"
}

.icon-linkedin:before {
    content: "\eaca"
}

.icon-rounded-checkmark:before {
    content: "\e918"
}

.expander {
    display: grid;
    grid-template-rows: auto 0fr;
    overflow: hidden;
    -webkit-transition: grid-template-rows .3s ease;
    transition: grid-template-rows .3s ease;
    transition: grid-template-rows .3s ease, -ms-grid-rows .3s ease
}

.expander__trigger {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    -ms-flex-item-align: start;
    align-self: flex-start
}

.expander__trigger,
.expander__trigger:after {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center
}

.expander__trigger:after {
    content: var(--icon-plus);
    font-family: icomoon;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    font-size: var(--font-size-xs);
    justify-content: center
}

.expander__content {
    overflow: hidden;
    -ms-flex-item-align: end;
    align-self: flex-end;
    opacity: 0;
    -webkit-transition: visibility .3s ease, opacity .3s ease;
    transition: visibility .3s ease, opacity .3s ease;
    visibility: hidden
}

@media (min-width:1024px) {
    .expander[data-expander-desktop-disabled=true] {
        grid-template-rows: auto 1fr;
        overflow: visible
    }
    .expander[data-expander-desktop-disabled=true] .expander__content {
        opacity: 1;
        overflow: visible;
        visibility: visible
    }
    .expander[data-expander-desktop-disabled=true] .expander__trigger {
        cursor: default;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
    .expander[data-expander-desktop-disabled=true] .expander__trigger:after {
        display: none
    }
}

.expander[aria-expanded=true] {
    grid-template-rows: auto 1fr
}

.expander[aria-expanded=true] .expander__trigger:after {
    content: var(--icon-minus)
}

.expander[aria-expanded=true] .expander__content {
    opacity: 1;
    visibility: visible
}
   
@media (min-width:1024px) {
    .mega-menu__sidebar .mega-menu__mid-items-group--view-all {
        display: block
    }
    .mega-menu__mid-items-group {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .mega-menu__mid-items-group>* {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
        flex: 1 1 0%
    }
    .mega-menu.has-secondary-nav .mega-menu__inner {
        grid-template-columns: auto auto 1fr auto
    }
}

@media (min-width:1280px) {
    .mega-menu.has-secondary-nav .mega-menu__logo {
        margin-right: var(--spacing-2)
    }
}

@media (min-width:1024px) {
    .mega-menu.has-secondary-nav .mega-menu__logo {
        margin-right: var(--spacing-7-half)
    }
}

.mega-menu.has-secondary-nav .mega-menu__link-toggle {
    display: none
}

@media (min-width:1024px) {
    .mega-menu.has-secondary-nav .mega-menu__link-toggle {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: relative;
        width: 85px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-weight: var(--font-weight-bold);
        gap: var(--spacing-2-half);
        letter-spacing: var(--letter-spacing-tight);
        margin-left: var(--spacing-2)
    }
}

@media (min-width:1280px) {
    .mega-menu.has-secondary-nav .mega-menu__link-toggle {
        margin-left: var(--spacing-7-half)
    }
}

@media (min-width:1024px) {
    .mega-menu.has-secondary-nav .mega-menu__link-toggle:before {
        background-color: #fff;
        bottom: calc(-1 * var(--spacing-1));
        content: "";
        height: calc(100% + var(--spacing-2));
        left: -18px;
        position: absolute;
        top: calc(-1 * var(--spacing-1));
        width: 1px
    }
}

@media (min-width:1280px) {
    .mega-menu.has-secondary-nav .mega-menu__link-toggle:before {
        left: calc(-1 * var(--spacing-10))
    }
}

.mega-menu.has-secondary-nav .mega-menu__link-toggle .burger-menu {
    display: block
}

@media (min-width:1024px) {
    .mega-menu.has-secondary-nav .mega-menu__top-level {
        opacity: 0;
        pointer-events: none;
        -webkit-transition: .2s;
        transition: .2s
    }
}

.mega-menu.has-secondary-nav.top-links-visible .mega-menu__top-level {
    opacity: 1;
    pointer-events: all
}

.mega-menu-sub {
    color: var(--colour-text-base);
    display: none;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 100%;
    flex: 1 0 100%
}

@media (min-width:1024px) {
    .mega-menu-sub {
        background-color: var(--colour-bg-white);
        bottom: 0;
        color: var(--colour-text-base);
        isolation: isolate;
        left: var(--sidebarWidth);
        overflow: auto;
        padding-bottom: var(--spacing-15);
        padding-top: var(--spacing-10);
        position: absolute;
        top: 0;
        width: var(--subWidth)
    }
    .mega-menu-sub::-webkit-scrollbar {
        width: 2px
    }
    .mega-menu-sub::-webkit-scrollbar-thumb {
        background: #000
    }
    .mega-menu-sub::-webkit-scrollbar-track {
        background: rgba(0, 0, 0, .3)
    }
    .mega-menu-sub:not(.mega-menu-sub--fullwidth) {
        padding-left: var(--spacing-10)
    }
}

@media (min-width:1280px) {
    .mega-menu-sub {
        padding-top: var(--spacing-15)
    }
    .mega-menu-sub:not(.mega-menu-sub--fullwidth) {
        padding-left: var(--spacing-15)
    }
}

@media (min-width:1024px) {
    .mega-menu-sub--fullwidth {
        -webkit-box-shadow: 0 16px 16px 0 rgba(0, 0, 0, .15);
        box-shadow: 0 16px 16px 0 rgba(0, 0, 0, .15);
        display: block;
        height: -webkit-fit-content;
        height: -moz-fit-content;
        height: fit-content;
        left: 0;
        max-height: 620px;
        opacity: 0;
        pointer-events: none;
        right: 0;
        top: 100%;
        -webkit-transform: translateY(25px);
        -ms-transform: translateY(25px);
        transform: translateY(25px);
        -webkit-transition: .4s;
        transition: .4s;
        width: 100%
    }
    .mega-menu__link-wrap.open>.mega-menu-sub--fullwidth {
        opacity: 1;
        pointer-events: all
    }
    .mega-menu-sub--fullwidth .mega-menu__panel,
    .mega-menu__link-wrap.open>.mega-menu-sub--fullwidth {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.mega-menu__link-wrap.open>.mega-menu-sub {
    display: block
}

.mega-menu-sub__inner {
    position: relative
}

@media (min-width:1024px) {
    .mega-menu-sub__header {
        display: block
    }
}

.mega-menu-sub__close {
    display: none
}

@media (min-width:1024px) {
    .mega-menu-sub__close {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        font-weight: var(--font-weight-bold);
        gap: var(--spacing-1);
        line-height: var(--line-height-2xl);
        position: absolute;
        right: calc(.5 * (100vw - 944px));
        top: var(--spacing-5);
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        z-index: 9
    }
}

@media (min-width:1024px) and (min-width:1280px) {
    .mega-menu-sub__close {
        right: calc(.5 * (100vw - 1200px));
        top: var(--spacing-10)
    }
}

@media (min-width:1024px) and (min-width:1536px) {
    .mega-menu-sub__close {
        right: calc(.5 * (100vw - 1296px))
    }
}

@media (min-width:1024px) {
    .mega-menu-sub__close i {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }
}

.mega-menu-sub__header {
    display: none
}

@media (min-width:1024px) {
    .mega-menu-sub__header {
        border-bottom: 1px solid var(--colour-neutral-light-grey);
        display: grid;
        gap: var(--spacing-2-half) var(--spacing-5);
        grid-template-columns: 1fr;
        padding-bottom: var(--spacing-10)
    }
}

.mega-menu-sub__title {
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-bold);
    grid-column: 1;
    grid-row: 1;
    line-height: var(--line-height-lg)
}

.mega-menu-sub__title strong {
    color: var(--colour-brand-primary);
    font-weight: var(--font-weight-bold)
}

.mega-menu-sub__description {
    align-self: center;
    grid-column: 1;
    grid-row: 2;
    line-height: var(--line-height-lg)
}

.mega-menu-sub__cta {
    grid-column: 2;
    grid-row: 2
}

@media (min-width:1024px) {
    .mega-menu-sub__content {
        padding-top: var(--spacing-10)
    }
}

.mega-menu-sub__content-title {
    color: var(--colour-brand-primary);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-lg);
    margin-bottom: var(--spacing-4);
    text-transform: uppercase
}

.mega-menu-sub__content>.mega-menu-link--parent-link {
    margin-bottom: var(--spacing-9);
    margin-top: calc(-1 * var(--spacing-4));
    padding: 0 var(--spacing-1)
}

.mega-menu__bottom-mid-items:not(.mega-menu__link-wrap>.mega-menu__bottom-mid-items) {
    display: grid;
    padding: var(--spacing-9) var(--spacing-1)
}

@media (min-width:1024px) {
    .mega-menu__bottom-mid-items:not(.mega-menu__link-wrap>.mega-menu__bottom-mid-items) {
        height: -webkit-fit-content;
        height: -moz-fit-content;
        height: fit-content;
        padding: 15px 0 0
    }
}

.mega-menu-mid-sub {
    display: block
}

.mega-menu-mid-sub .mega-menu__mid-items-group {
    gap: var(--spacing-16)
}

.mega-menu-mid-sub .mega-menu__bottom-items {
    padding: 0
}

.mega-menu-mid-sub .mega-menu__bottom-mid-items {
    display: none;
    gap: var(--spacing-5);
    grid-template-columns: 1fr;
    padding: 0 var(--spacing-1) var(--spacing-9) var(--spacing-1)
}

@media (min-width:1024px) {
    .mega-menu-mid-sub .mega-menu__bottom-mid-items {
        display: grid;
        gap: var(--spacing-7-half);
        margin-top: var(--spacing-4);
        padding: 0
    }
}

.mega-menu-mid-sub .mega-menu__link-wrap .mega-menu__link:after {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.mega-menu-mid-sub .mega-menu__link-wrap.open .mega-menu__link:after {
    -webkit-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg)
}

.mega-menu-mid-sub .mega-menu__link-wrap.open>.mega-menu__bottom-mid-items {
    display: grid
}

.mega-menu-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--spacing-2-half);
    overflow: visible;
    position: relative;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.mega-menu-link a {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.mega-menu-link__remove {
    display: none;
    font-size: 12px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

@media (min-width:1024px) {
    .mega-menu-link--parent-link {
        display: none
    }
}

.mega-menu-icon-link__title,
.mega-menu-text-link__title {
    font-size: var(--font-size-body-sm);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-xl);
    -webkit-transition: color .3s;
    transition: color .3s
}

@media (min-width:1024px) {
    .mega-menu-icon-link__title,
    .mega-menu-text-link__title {
        font-size: var(--font-size-body-regular)
    }
}

.mega-menu-icon-link__description,
.mega-menu-text-link__description {
    display: none;
    font-size: var(--font-size-xs);
    margin-top: var(--spacing-1)
}

@media (min-width:1024px) {
    .mega-menu-icon-link__description,
    .mega-menu-text-link__description {
        display: block
    }
}

.mega-menu-icon-link:hover .mega-menu-icon-link__title,
.mega-menu-icon-link:hover .mega-menu-text-link__title,
.mega-menu-text-link:hover .mega-menu-icon-link__title,
.mega-menu-text-link:hover .mega-menu-text-link__title {
    color: var(--colour-brand-primary);
    text-decoration: underline
}

.mega-menu-icon-link a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--spacing-3)
}

@media (min-width:1024px) {
    .mega-menu-icon-link a {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.mega-menu-icon-link__image {
    height: auto;
    min-width: 30px;
    width: 30px
}

@media (min-width:1280px) {
    .mega-menu-icon-link__image {
        min-width: 40px;
        width: 40px
    }
}

.mega-menu-simple-icon-link a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--spacing-3)
}

.mega-menu-simple-icon-link__title {
    font-size: var(--font-size-body-sm);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-xl);
    -webkit-transition: color .3s;
    transition: color .3s
}

@media (min-width:1024px) {
    .mega-menu-simple-icon-link__title {
        font-size: var(--font-size-body-regular)
    }
}

.mega-menu-simple-icon-link__image {
    height: auto;
    width: 24px
}

.mega-menu-simple-icon-link:hover .mega-menu-simple-icon-link__title {
    color: var(--colour-brand-primary);
    text-decoration: underline
}

.mega-menu-card-link {
    height: 100%
}

.mega-menu-card-link:hover {
    color: var(--colour-text-base)
}

.mega-menu-card-link a {
    border-radius: var(--border-radius-md);
    -webkit-box-shadow: 0 4px 42px 0 rgba(0, 0, 0, .122);
    box-shadow: 0 4px 42px 0 rgba(0, 0, 0, .122);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    overflow: hidden;
    padding: var(--spacing-1);
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--spacing-6)
}

@media (min-width:1024px) {
    .mega-menu-card-link a {
        border-radius: var(--border-radius-lg);
        padding: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 0
    }
}

.mega-menu-card-link__image-wrap {
    min-width: 60px;
    overflow: hidden
}

@media (min-width:1024px) {
    .mega-menu-card-link--image .mega-menu-card-link__image-wrap {
        min-height: 120px;
        position: relative;
        width: 100%;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }
}

.mega-menu-card-link--icon .mega-menu-card-link__image-wrap {
    aspect-ratio: 1/1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 60px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media (min-width:1024px) {
    .mega-menu-card-link--icon .mega-menu-card-link__image-wrap {
        aspect-ratio: unset;
        width: 100%;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding: var(--spacing-4) var(--spacing-4) var(--spacing-1) var(--spacing-4)
    }
}

.mega-menu-card-link__image {
    aspect-ratio: 1/1
}

.mega-menu-card-link--image .mega-menu-card-link__image {
    border-radius: var(--border-radius-sm);
    min-width: 60px;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: .3s;
    transition: .3s;
    width: 60px
}

@media (min-width:1024px) {
    .mega-menu-card-link--image .mega-menu-card-link__image {
        aspect-ratio: unset;
        border-radius: 0;
        height: 100%;
        inset: 0;
        position: absolute;
        width: 100%
    }
}

.mega-menu-card-link--image:hover .mega-menu-card-link__image {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.mega-menu-card-link--icon .mega-menu-card-link__image {
    min-width: 36px;
    -o-object-fit: contain;
    object-fit: contain;
    width: 36px
}

.mega-menu-card-link__image-tag {
    height: auto;
    position: absolute;
    right: var(--spacing-2-half);
    top: var(--spacing-2-half);
    width: 33px
}

@media (min-width:1024px) {
    .mega-menu-card-link__image-tag {
        width: 39px
    }
    .mega-menu-card-link__content {
        padding: var(--spacing-4) var(--spacing-4) var(--spacing-5) var(--spacing-4)
    }
}

.mega-menu-card-link__title {
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-2xl);
    -webkit-transition: color .3s;
    transition: color .3s
}

@media (min-width:1024px) {
    .mega-menu-card-link__title {
        font-size: var(--font-size-body-sm)
    }
}

.mega-menu-card-link:hover .mega-menu-card-link__title {
    color: var(--colour-brand-primary);
    text-decoration: underline
}

.mega-menu-card-link__description {
    display: none
}

@media (min-width:1024px) {
    .mega-menu-card-link__description {
        display: block;
        font-size: var(--font-size-xs);
        line-height: var(--line-height-lg);
        margin-top: var(--spacing-2-half)
    }
}

.mega-menu-card-link__cta {
    display: none
}

@media (min-width:1024px) {
    .mega-menu-card-link__cta {
        display: block;
        margin-top: var(--spacing-3)
    }
}

.mega-menu-card-link:hover .mega-menu-card-link__cta {
    background: var(--_background-colour--hover);
    color: var(--_text-colour--hover)
}

.mega-menu-sub--previous-search .mega-menu-link__remove {
    display: block
}

.carousel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-8);
    min-width: 0;
    width: 100%
}

.carousel.swiper {
    overflow: visible
}

.carousel .swiper-wrapper {
    min-width: 0
}

.carousel .swiper-slide {
    height: auto;
    width: auto
}

.carousel .swiper-slide,
.carousel-controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.carousel-controls {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--spacing-6);
    --_colour-progress-bar: #000
}

.carousel-controls__bar {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    background: var(--colour-bg-contrast);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-grow: 1;
    height: 2px
}

.carousel-controls__bar .swiper-pagination-progressbar-fill {
    background: var(--_colour-progress-bar);
    height: 100%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left
}

.carousel-controls__arrows {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex: 0;
    flex: 0;
    gap: var(--spacing-2-half)
}

.carousel-controls__page-counter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--spacing-2);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.carousel-controls__page {
    font-size: var(--font-size-body-lg);
    font-weight: var(--font-weight-bold)
}

.carousel-controls__page-count-divider {
    background: hsla(0, 0%, 100%, .3);
    height: 1px;
    width: 40px
}

.carousel-controls--light .carousel-controls__bar {
    background: hsla(0, 0%, 100%, .3)
}

.carousel-controls--light .carousel-controls__bar .swiper-pagination-progressbar-fill {
    background: #fff
}

.carousel-controls--light .carousel-controls__page {
    color: #fff
}

.carousel-controls--light .btn-control:not([disabled]) {
    --_background-colour: var(--colour-base-white);
    --_text-colour: var(--colour-brand-tag-red);
    --_box-shadow-colour: transparent
}

.carousel-controls--light .btn-control[disabled] {
    --_background-colour: var(--colour-neutral-mid-grey);
    --_box-shadow-colour: transparent
}

.carousel-bullets {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    gap: var(--spacing-2);
    justify-content: center;
    width: 100%
}

.carousel-bullets .swiper-pagination-bullet {
    background-color: #cacaca;
    height: 4px;
    -webkit-transition: background-colour 1s ease;
    transition: background-colour 1s ease;
    width: 30px
}

.carousel-bullets .swiper-pagination-bullet-active {
    background-color: var(--colour-brand-tag-red)
}

.checkbox-container {
    cursor: pointer
}

.checkbox-container input {
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    clip: rect(0, 0, 0, 0);
    border-width: 0;
    white-space: nowrap
}

.checkbox-container .checkbox {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    position: relative;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    font-size: var(--font-size-body-regular);
    font-weight: var(--font-weight-semibold);
    gap: var(--spacing-2);
    justify-content: center
}

.checkbox-container .checkbox:before {
    border: 2px solid var(--checbox-border-colour, var(--colour-brand-primary));
    border-radius: var(--border-radius-sm);
    content: "";
    display: block;
    height: 20px;
    min-width: 20px;
    width: 20px
}

.checkbox-container .checkbox:after {
    content: var(--icon-checkmark);
    font-family: icomoon;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    color: var(--colour-text-light);
    display: none;
    font-size: 9px;
    justify-content: center;
    left: 5px;
    position: absolute;
    top: 5px
}

.checkbox-container input:checked~.checkbox:before {
    background: var(--checkbox-active-bg-colour, var(--colour-brand-primary))
}

.checkbox-container input:checked~.checkbox:after,
.field-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.field-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-2-half)
}

.field-container--required label:after {
    color: var(--colour-brand-primary);
    content: "*";
    display: inline-block;
    margin-left: var(--spacing-1)
}

.field-container input,
.field-container label {
    font-weight: var(--font-weight-semibold)
}

.field-container input {
    background: var(--colour-bg-subtle);
    border-radius: var(--border-radius-full);
    letter-spacing: var(--letter-spacing-tight);
    line-height: var(--line-height-2xl);
    padding: var(--spacing-2-half) var(--spacing-5)
}

.field-container input:focus {
    outline-color: var(--colour-brand-primary)
}

.field-container input::-webkit-input-placeholder {
    color: var(--colour-neutral-dark-grey)
}

.field-container input::-moz-placeholder {
    color: var(--colour-neutral-dark-grey)
}

.field-container input:-ms-input-placeholder {
    color: var(--colour-neutral-dark-grey)
}

.field-container input::-ms-input-placeholder {
    color: var(--colour-neutral-dark-grey)
}

.field-container input::placeholder {
    color: var(--colour-neutral-dark-grey)
}

.switch {
    --_circle-diameter: var(--circle-diameter, 30px);
    --_switch-colour-default: var( --switch-colour-default, var(--colour-brand-primary));
    --_switch-colour-active: var( --switch-colour-active, var(--colour-brand-primary));
    --_horizontal-padding: var(--horizontal-padding, var(--spacing-2));
    --_vertical-padding: var(--vertical-padding, var(--spacing-2));
    --_states-gap: var(--states-gap, var(--spacing-4));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: var(--font-size-body-regular);
    font-weight: var(--font-weight-semibold);
    gap: var(--spacing-2-half);
    letter-spacing: var(--letter-spacing-tight)
}

.switch input {
    display: none
}

.switch__toggle {
    border-radius: 1000px;
    -webkit-box-shadow: inset 0 0 0 2px var(--_switch-colour-active);
    box-shadow: inset 0 0 0 2px var(--_switch-colour-active);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-width: calc(2 * var(--_circle-diameter) + 2 * var(--_horizontal-padding) + var(--_states-gap));
    padding: var(--_vertical-padding) var(--_horizontal-padding)
}

.switch__circle {
    aspect-ratio: 1;
    background-color: var(--_switch-colour-default);
    border-radius: 50%;
    display: block;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition: background-color .35s ease, -webkit-transform .35s ease;
    transition: background-color .35s ease, -webkit-transform .35s ease;
    transition: transform .35s ease, background-color .35s ease;
    transition: transform .35s ease, background-color .35s ease, -webkit-transform .35s ease;
    width: var(--_circle-diameter)
}

input:checked+.switch__circle {
    background-color: var(--_switch-colour-active);
    -webkit-transform: translateX(calc(100% + var(--_states-gap)));
    -ms-transform: translateX(calc(100% + var(--_states-gap)));
    transform: translateX(calc(100% + var(--_states-gap)))
}

.calendar-field {
    position: relative
}

@media (min-width:1024px) {
    .calendar-field {
        max-width: 280px
    }
}

.calendar-field input {
    width: 100%
}

.calendar-field i {
    bottom: 0;
    color: var(--colour-brand-primary);
    font-size: 24px;
    pointer-events: none;
    position: absolute;
    right: var(--spacing-5);
    top: 0
}

input[type=date] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    min-height: 44px
}

input[type=date]::-webkit-calendar-picker-indicator,
input[type=date]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none;
    opacity: 0
}

.flatpickr-calendar {
    border-radius: var(--border-radius-lg) !important;
    -webkit-box-shadow: 0 4px 42px 0 rgba(0, 0, 0, .1) !important;
    box-shadow: 0 4px 42px 0 rgba(0, 0, 0, .1) !important
}

.flatpickr-next-month,
.flatpickr-prev-month {
    display: none
}

.flatpickr-current-month .cur-year,
.flatpickr-current-month .flatpickr-monthDropdown-months {
    font-size: var(--font-size-body-regular) !important;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--line-height-2xl) !important
}

.flatpickr-current-month .flatpickr-monthDropdown-months:hover,
.flatpickr-current-month .numInputWrapper:hover {
    background-color: transparent !important
}

.flatpickr-day {
    font-size: var(--font-size-body-sm) !important;
    font-weight: var(--font-weight-bold) !important
}

.flatpickr-day.today {
    border-color: transparent !important
}

.flatpickr-day.selected {
    background: var(--colour-brand-primary) !important;
    border-color: var(--colour-brand-primary) !important
}

.flatpickr-weekday {
    color: var(--colour-neutral-mid-grey) !important;
    font-size: var(--font-size-xs) !important;
    font-weight: var(--font-weight-bold) !important
}

.field-error {
    -webkit-box-shadow: 0 0 0 2px #df1b41;
    box-shadow: 0 0 0 2px #df1b41
}

.field-error-message {
    color: #df1b41;
    font-size: .93rem;
    margin-top: .25rem
}

.card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    border-radius: var(--border-radius-lg);
    color: var(--colour-text-light);
    isolation: isolate;
    max-width: 265px;
    min-height: 340px;
    min-width: 265px;
    overflow: hidden;
    -webkit-transition: min-height .65s ease;
    transition: min-height .65s ease;
    --_min-h--hover: 392px;
    --_title-font-size: var(--font-size-body-regular)
}

@media (min-width:1024px) {
    .card {
        --_title-font-size: var(--font-size-xl);
        max-width: 300px;
        min-height: 385px;
        min-width: 300px;
        --_min-h--hover: 450px
    }
}

.card--small {
    max-width: 230px;
    min-height: 295px;
    --_min-h--hover: 355px
}

.card--small .card__title {
    --_title-font-size: var(--font-size-body-regular)
}

@media (min-width:1024px) {
    .card--small .card__date {
        font-size: var(--font-size-xs)
    }
}

.card--small .card__below-fold-inner {
    padding-bottom: var(--spacing-6)
}

@media (min-width:1024px) {
    .card--small .card__below-fold-inner {
        padding-bottom: var(--spacing-6)
    }
}

.card__image {
    inset: 0;
    position: absolute;
    z-index: var(--z-neg-10)
}

.card__image:after {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(35, 35, 35, 0)), to(#232323));
    background: linear-gradient(180deg, rgba(35, 35, 35, 0), #232323);
    content: "";
    inset: 0;
    opacity: .6;
    position: absolute
}

.card__image img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    position: absolute;
    top: 0;
    width: 100%
}

.card__inner {
    display: grid;
    grid-template-rows: auto 0fr;
    padding-left: var(--spacing-5);
    padding-right: var(--spacing-5);
    padding-top: var(--spacing-7);
    -webkit-transition: grid-template-rows .65s ease;
    transition: grid-template-rows .65s ease;
    transition: grid-template-rows .65s ease, -ms-grid-rows .65s ease
}

@media (min-width:1024px) {
    .card__inner {
        padding-left: var(--spacing-7);
        padding-right: var(--spacing-7);
        padding-top: var(--spacing-10)
    }
}

.card__above-fold {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-2-half)
}

.card__below-fold {
    margin-top: var(--spacing-10);
    opacity: 0;
    overflow: hidden;
    padding: 2px;
    -webkit-transition: opacity .65s ease;
    transition: opacity .65s ease
}

.card__below-fold-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-bottom: var(--spacing-8)
}

@media (min-width:1024px) {
    .card__below-fold-inner {
        padding-bottom: var(--spacing-10)
    }
}

.card__date {
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-md)
}

.card__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: var(--spacing-2);
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.card__title {
    font-size: var(--_title-font-size);
    font-weight: var(--font-weight-semibold);
    -webkit-line-clamp: 3;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical
}

.card__description,
.card__title {
    line-height: var(--line-height-xl)
}

.card__description {
    font-size: var(--font-size-body-regular);
    font-weight: var(--font-weight-regular)
}

.card:hover {
    min-height: var(--_min-h--hover)
}

.card:hover .card__inner {
    grid-template-rows: auto 1fr
}

.card:hover .card__below-fold {
    opacity: 1
}

@media (max-width:1023px) {
    .swiper-slide-active .card {
        min-height: var(--_min-h--hover)
    }
    .swiper-slide-active .card .card__inner {
        grid-template-rows: auto 1fr
    }
    .swiper-slide-active .card .card__below-fold {
        opacity: 1
    }
}

.trustpilot-card {
    background-color: var(--colour-bg-default);
    border-radius: var(--border-radius-md);
    -webkit-box-shadow: 0 4px 22px 0 rgba(0, 0, 0, .12);
    box-shadow: 0 4px 22px 0 rgba(0, 0, 0, .12);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    position: relative;
    width: 100%
}

.trustpilot-card:before {
    background-color: var(--colour-bg-primary);
    content: "";
    height: 9px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.trustpilot-card__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-3);
    padding: var(--spacing-12) var(--spacing-5) var(--spacing-10)
}

.trustpilot-card__rating {
    margin-bottom: var(--spacing-1)
}

.trustpilot-card__rating img {
    height: 16px;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center left;
    object-position: center left
}

.trustpilot-card__title {
    font-weight: var(--font-weight-bold)
}

.trustpilot-card__text {
    line-height: var(--line-height-2xl);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.trustpilot-card__meta,
.trustpilot-card__text {
    font-size: var(--font-size-body-sm)
}

.trustpilot-card__meta strong {
    font-weight: var(--font-weight-bold)
}

.tag-modal {
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: var(--z-50);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    background-color: rgba(0, 0, 0, .25);
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    visibility: hidden
}

.tag-modal[aria-hidden=false] {
    opacity: 1;
    pointer-events: all;
    visibility: visible
}

.tag-modal[aria-hidden=false],
.tag-modal[aria-hidden=true] {
    -webkit-transition: opacity .5s ease, visibility .5s ease;
    transition: opacity .5s ease, visibility .5s ease
}

.tag-modal[aria-hidden=true] {
    opacity: 0;
    pointer-events: none;
    visibility: hidden
}

.tag-modal-dialog {
    background: var(--colour-bg-default);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    border-radius: var(--border-radius-md);
    -ms-flex-direction: column;
    flex-direction: column;
    max-height: calc(100svh - var(--header-height--mobile) - var(--spacing-10));
    overflow: hidden
}

@media (min-width:1024px) {
    .tag-modal-dialog {
        max-height: calc(100vh - var(--header-height--desktop) - var(--spacing-20))
    }
}

.tag-modal-close {
    --_control-colour: var(--control-colour, var(--colour-brand-tag-red));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: var(--spacing-2);
    margin-top: var(--spacing-2);
    position: absolute;
    right: 0;
    top: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    border: 2px solid var(--_control-colour);
    border-radius: var(--border-radius-full);
    color: var(--_control-colour);
    font-size: 12px;
    justify-content: center;
    padding: var(--spacing-2)
}

.tag-modal-close--icon {
    --_control-colour: var(--colour-base-black);
    border: none;
    font-size: 25px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.tag-modal--bundle .bundle-modal {
    max-width: 768px
}

.tag-modal--bundle .bundle-modal__inner {
    margin: var(--spacing-3);
    overflow: auto;
    padding: var(--spacing-3)
}

.tag-modal--bundle .bundle-modal__inner::-webkit-scrollbar {
    width: 2px
}

.tag-modal--bundle .bundle-modal__inner::-webkit-scrollbar-thumb {
    background: #000
}

.tag-modal--bundle .bundle-modal__inner::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, .3)
}

@media (min-width:1024px) {
    .tag-modal--bundle .bundle-modal__inner {
        margin: var(--spacing-6);
        padding: var(--spacing-6)
    }
}

.tag-modal--bundle .bundle-modal__heading {
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-2xl);
    text-align: center
}

@media (min-width:1024px) {
    .tag-modal--bundle .bundle-modal__heading {
        font-size: var(--font-size-4xl)
    }
}

.tag-modal--bundle .bundle-modal__description {
    margin-top: var(--spacing-5);
    text-align: center
}

@media (min-width:1024px) {
    .tag-modal--bundle .bundle-modal__description {
        margin-top: var(--spacing-7-half)
    }
}

.tag-modal--bundle .bundle-modal__ctas {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--spacing-5);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: var(--spacing-5)
}

@media (min-width:1024px) {
    .tag-modal--bundle .bundle-modal__ctas {
        margin-top: var(--spacing-7-half)
    }
}

.popup-content-modal__dialog {
    border-radius: var(--border-radius-lg);
    position: relative
}

.popup-content-modal__dialog:after {
    background-color: var(--colour-brand-primary);
    content: "";
    height: 20px;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.popup-content-modal__inner {
    overflow: auto;
    padding: var(--spacing-12-half) var(--spacing-12-half) var(--spacing-15) var(--spacing-5)
}

.popup-content-modal__inner::-webkit-scrollbar {
    width: 2px
}

.popup-content-modal__inner::-webkit-scrollbar-thumb {
    background: #000
}

.popup-content-modal__inner::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, .3)
}

@media (min-width:1024px) {
    .popup-content-modal__inner {
        padding: 70px var(--spacing-20) var(--spacing-15) var(--spacing-20)
    }
}

.popup-content-modal .tag-modal-close {
    top: var(--spacing-7-half)
}

@media (min-width:1024px) {
    .popup-content-modal .tag-modal-close {
        right: var(--spacing-5);
        top: var(--spacing-12-half)
    }
}

.popup-content-modal .rte h2 {
    font-size: var(--font-size-3xl)
}

@media (min-width:1024px) {
    .popup-content-modal .rte h2 {
        font-size: var(--font-size-5xl)
    }
}

.video {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    --_default-w: 16;
    --_default-h: 9
}

@media (min-width:1024px) {
    .video {
        border-radius: var(--border-radius-lg)
    }
}

.video:focus-within {
    outline: 2px solid var(--colour-brand-primary);
    outline-offset: 2px
}

.video.aspect-landscape {
    --_default-w: 4;
    --_default-h: 3
}

.video.aspect-portrait {
    --_default-w: 3;
    --_default-h: 4
}

.video.aspect-square {
    --_default-w: 1;
    --_default-h: 1
}

.video__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    aspect-ratio: calc(var(--_default-w) / var(--_default-h));
    border-radius: var(--border-radius-md);
    justify-content: center;
    overflow: hidden;
    width: 100%
}

.video__container iframe {
    background-color: #000;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.video__container:has(video) {
    aspect-ratio: calc(var(--_width, var(--_default-w)) / var(--_height, var(--_default-h)));
    max-height: 720px;
    max-width: 100%
}

.video__player {
    min-height: 100%;
    width: 100%
}

.video__player:has(video) {
    height: 100%;
    max-width: 100%;
    width: auto
}

.video__player video {
    min-height: 100%;
    width: 100%
}

.video__button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    left: 0;
    position: absolute;
    top: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: var(--border-radius-md);
    height: 100%;
    justify-content: center;
    overflow: hidden;
    width: 100%
}

.video.active .video__button {
    display: none
}

.video__play {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    font-size: var(--font-size-body-sm);
    font-weight: var(--font-weight-bold);
    gap: var(--spacing-2);
    justify-content: center;
    text-align: center;
    z-index: var(--z-10)
}

.video__play,
.video__play i {
    color: var(--colour-brand-primary-contrast)
}

.video__play i {
    background-color: var(--colour-brand-primary);
    border-radius: var(--border-radius-full);
    font-size: 12px;
    height: 40px;
    padding-left: 2px;
    width: 40px
}

@media (min-width:1024px) {
    .video__play i {
        font-size: var(--font-size-body-sm);
        height: 50px;
        width: 50px
    }
}

.video__poster,
.video__poster:after {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.video__poster:after {
    background-color: rgba(0, 0, 0, .4);
    content: ""
}

.video__poster img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%
}

.pagination {
    --indicator-colour: var(--colour-brand-primary)
}

.pagination__inner {
    gap: var(--spacing-8)
}

.pagination__inner,
.pagination__pages {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.pagination__pages {
    gap: var(--spacing-3)
}

.pagination-page {
    font-size: var(--font-size-body-lg);
    font-weight: var(--font-weight-bold);
    padding: var(--spacing-3) var(--spacing-1);
    position: relative
}

.pagination-page:before {
    background-color: var(--indicator-colour);
    bottom: 0;
    content: "";
    height: 4px;
    left: 0;
    position: absolute;
    right: 0;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: -webkit-transform .35s ease;
    transition: -webkit-transform .35s ease;
    transition: transform .35s ease;
    transition: transform .35s ease, -webkit-transform .35s ease
}

.pagination-page.active:before {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1)
}

.filter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media (min-width:1024px) {
    .filter {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.filter__trigger {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    gap: var(--spacing-1);
    max-width: var(--max-w-lg)
}

@media (min-width:1024px) {
    .filter__trigger {
        display: none
    }
}

.filter__count {
    background-color: var(--colour-bg-primary);
    border-radius: var(--border-radius-full);
    color: var(--colour-brand-primary-contrast);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 10px;
    font-weight: var(--font-weight-semibold);
    height: 17px;
    margin-top: 1px;
    width: 17px
}

.filter__count,
.filter__expanded {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.filter__expanded {
    background-color: rgba(0, 0, 0, .25);
    bottom: 0;
    display: none;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: var(--z-50)
}

@media (min-width:1024px) {
    .filter__expanded {
        background-color: transparent;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: relative;
        -webkit-transition: opacity .5s ease, visibility .5s ease;
        transition: opacity .5s ease, visibility .5s ease
    }
}

.filter__expanded-content,
.filter__trigger[aria-expanded=true]+.filter__expanded {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.filter__expanded-content {
    padding: var(--spacing-8) var(--spacing-6);
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: var(--colour-bg-default);
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--spacing-5);
    max-width: 400px;
    width: calc(100% - var(--spacing-10))
}

@media (min-width:1024px) {
    .filter__expanded-content {
        max-width: none;
        padding: 0;
        width: 180px;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        background-color: transparent;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        gap: var(--spacing-6)
    }
}

.filter__close {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

@media (min-width:1024px) {
    .filter__close {
        display: none
    }
}

.filter__close i {
    border: 2px solid var(--colour-brand-primary);
    border-radius: var(--border-radius-full);
    color: var(--colour-brand-primary);
    font-size: var(--font-size-xs);
    padding: var(--spacing-2)
}

.filter__title {
    font-size: var(--font-size-body-lg);
    font-weight: var(--font-weight-bold)
}

.filter__clear {
    margin-left: auto
}

@media (min-width:1024px) {
    .filter__clear {
        margin-right: auto;
        padding-left: var(--spacing-2);
        padding-right: var(--spacing-2);
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }
}

.filter__fields {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-6);
    width: 100%
}

@media (min-width:1024px) {
    .filter__fields {
        gap: var(--spacing-2)
    }
}

.filter__submit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: var(--spacing-3);
    width: 100%
}

@media (min-width:1024px) {
    .filter__submit {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
}

.filter__submit .btn {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

@media (min-width:1024px) {
    .filter--hide .filter__expanded {
        opacity: 0;
        visibility: hidden
    }
}

.filter-field {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    width: 100%
}

@media (min-width:1024px) {
    .filter-field {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.filter-field__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: var(--colour-bg-contrast);
    border-bottom: 1px solid #eee;
    border-radius: var(--border-radius-full);
    padding: var(--spacing-2) var(--spacing-2) var(--spacing-2) var(--spacing-5);
    width: 100%
}

@media (min-width:1024px) {
    .filter-field__label {
        background-color: transparent;
        border-radius: var(--border-radius-none);
        font-size: var(--font-size-body-sm);
        font-weight: var(--font-weight-bold);
        padding-bottom: var(--spacing-2);
        padding-left: 0;
        padding-right: 0;
        padding-top: var(--spacing-2)
    }
}

.filter-field__label:after {
    content: var(--icon-chevron-down);
    font-family: icomoon;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: -webkit-box;
    display: -ms-flexbox;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    aspect-ratio: 1/1;
    margin-left: auto;
    width: 30px;
    -ms-flex-negative: 0;
    align-items: center;
    background: var(--colour-bg-default);
    border-radius: var(--border-radius-full);
    -webkit-box-shadow: inset 0 0 0 2px var(--colour-brand-primary);
    box-shadow: inset 0 0 0 2px var(--colour-brand-primary);
    color: var(--colour-brand-primary);
    display: flex;
    flex-shrink: 0;
    font-size: var(--font-size-xs);
    justify-content: center;
    -webkit-transition: color .35s ease, background-color .35s ease, -webkit-transform .35s ease;
    transition: color .35s ease, background-color .35s ease, -webkit-transform .35s ease;
    transition: transform .35s ease, color .35s ease, background-color .35s ease;
    transition: transform .35s ease, color .35s ease, background-color .35s ease, -webkit-transform .35s ease
}

@media (min-width:1024px) {
    .filter-field__label:after {
        aspect-ratio: auto;
        background-color: transparent;
        border-radius: var(--border-radius-none);
        -webkit-box-shadow: none;
        box-shadow: none;
        color: currentColor;
        width: auto
    }
}

.filter-field__label:hover:after {
    background: var(--colour-brand-primary);
    color: var(--colour-brand-primary-contrast)
}

@media (min-width:1024px) {
    .filter-field__label:hover:after {
        background: transparent;
        color: currentColor
    }
}

.filter-field__options {
    background-color: #fff;
    display: none;
    left: 0;
    padding: var(--spacing-6) var(--spacing-5);
    position: absolute;
    right: 0;
    top: calc(100% + var(--spacing-3));
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    border-radius: var(--border-radius-md);
    -webkit-box-shadow: 0 10px 40px 0 rgba(0, 0, 0, .25);
    box-shadow: 0 10px 40px 0 rgba(0, 0, 0, .25);
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-5);
    max-height: 250px;
    overflow-y: auto;
    z-index: var(--z-10)
}

.filter-field__options::-webkit-scrollbar {
    width: 2px
}

.filter-field__options::-webkit-scrollbar-thumb {
    background: #000
}

.filter-field__options::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, .3)
}

@media (min-width:1024px) {
    .filter-field__options {
        background: none;
        border-radius: var(--border-radius-none);
        -webkit-box-shadow: none;
        box-shadow: none;
        margin-bottom: var(--spacing-8);
        margin-top: var(--spacing-6);
        max-height: 300px;
        padding-bottom: 0;
        padding-left: 0;
        padding-right: var(--spacing-2);
        padding-top: 0;
        position: relative;
        top: auto
    }
}

.filter-field.active .filter-field__label:after {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.filter-field.active .filter-field__options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.filter-summary {
    display: none;
    margin-top: var(--spacing-5);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--spacing-7-half);
    width: 180px
}

@media (min-width:1024px) {
    .filter-summary {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-transition: opacity .5s ease, visibility .5s ease;
        transition: opacity .5s ease, visibility .5s ease
    }
}

.filter-summary__list {
    gap: var(--spacing-4)
}

.filter-summary-item,
.filter-summary__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.filter-summary-item {
    gap: var(--spacing-2)
}

.filter-summary-item__title {
    font-weight: var(--font-weight-bold)
}

.filter-summary-item__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.filter-summary-item__list li:not(:last-child):after {
    content: ", "
}

.trustpilot-component {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    gap: var(--spacing-4);
    justify-content: center
}

@media (min-width:1024px) {
    .trustpilot-component {
        gap: var(--spacing-5);
        max-width: none;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
}

.trustpilot-component__stars img {
    height: 23px;
    -o-object-fit: contain;
    object-fit: contain;
    width: auto
}

@media (min-width:1024px) {
    .trustpilot-component__stars img {
        height: 26px
    }
}

.trustpilot-component__reviews {
    font-size: var(--font-size-body-regular);
    letter-spacing: var(--letter-spacing-tight);
    text-align: center
}

@media (min-width:1024px) {
    .trustpilot-component__reviews {
        font-size: var(--font-size-xl)
    }
}

.trustpilot-component__reviews span {
    display: inline-block
}

.trustpilot-component__reviews strong {
    font-weight: var(--font-weight-bold)
}

.trustpilot-component__trustscore {
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold)
}

@media (min-width:1024px) {
    .trustpilot-component__trustscore {
        font-size: var(--font-size-body-sm)
    }
}

.trustpilot-component__trustscore span+span {
    margin-left: var(--spacing-1)
}

.trustpilot-component__trustscore span+span:before {
    content: "|";
    margin-right: var(--spacing-1)
}

.trustpilot-component__logo svg {
    height: 24px;
    width: auto
}

@media (min-width:1024px) {
    .trustpilot-component__logo svg {
        height: 35px
    }
}

.trustpilot-component--alt {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: var(--spacing-3);
    max-width: none
}

.trustpilot-component--alt .trustpilot-component__stars img {
    height: 34px
}

@media (min-width:1024px) {
    .trustpilot-component--alt .trustpilot-component__stars img {
        height: 45px
    }
}

.trustpilot-component--alt .trustpilot-component__logo {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1
}

.trustpilot-component--alt .trustpilot-component__logo svg {
    height: 26px
}

@media (min-width:1024px) {
    .trustpilot-component--alt .trustpilot-component__logo svg {
        height: 34px
    }
}

.order-summary {
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    z-index: var(--z-10)
}

@media (min-width:1024px) {
    .order-summary {
        border: 2px solid var(--colour-bg-contrast);
        border-radius: var(--border-radius-lg);
        -webkit-box-shadow: 0 4px 42px 0 rgba(0, 0, 0, .1);
        box-shadow: 0 4px 42px 0 rgba(0, 0, 0, .1);
        overflow: hidden;
        position: sticky;
        top: calc(var(--header-height--desktop) + var(--spacing-5))
    }
}

.order-summary--no-sticky {
    position: relative;
    top: 0
}

.order-summary__content {
    background-color: var(--colour-bg-white);
    max-height: 60vh;
    overflow-x: hidden;
    overflow-y: auto;
    padding-bottom: var(--spacing-7-half)
}

@media (min-width:1024px) {
    .order-summary__content {
        max-height: unset;
        overflow: hidden;
        padding-bottom: var(--spacing-10)
    }
}

.order-summary__expander {
    color: var(--colour-brand-primary);
    position: relative;
    top: 6px;
    width: 100%
}

.order-summary__expander svg {
    margin: auto;
    width: 320px
}

@media (min-width:1024px) {
    .order-summary__expander svg {
        display: none
    }
    .order-summary__expander {
        background-color: var(--colour-brand-primary);
        height: 16px;
        pointer-events: none;
        top: 0
    }
}

.order-summary__expander:after {
    background-color: currentColor;
    border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
    content: "";
    display: block;
    height: 16px;
    left: 0;
    position: absolute;
    right: 0;
    top: 21px
}

@media (min-width:1024px) {
    .order-summary__expander:after {
        display: none
    }
}

.order-summary__inner {
    margin-top: var(--spacing-4)
}

@media (min-width:1024px) {
    .order-summary__inner {
        margin-top: 0
    }
}

.order-summary__expand-content {
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    -webkit-transition: grid-template-rows .5s;
    transition: grid-template-rows .5s;
    transition: grid-template-rows .5s, -ms-grid-rows .5s
}

.order-summary__expand-content-inner {
    min-height: 0;
    -webkit-transition: visibility .5s;
    transition: visibility .5s;
    visibility: hidden
}

@media (min-width:1024px) {
    .order-summary__expand-content {
        grid-template-rows: 1fr
    }
    .order-summary__expand-content .order-summary__expand-content-inner {
        visibility: visible
    }
}

.order-summary__expand-content--open {
    grid-template-rows: 1fr
}

.order-summary__expand-content--open .order-summary__expand-content-inner {
    visibility: visible
}

.order-summary__heading {
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-xl);
    margin-top: var(--spacing-5);
    padding: 0 var(--spacing-5)
}

@media (min-width:1024px) {
    .order-summary__heading {
        font-size: var(--font-size-3xl);
        margin-top: var(--spacing-11);
        padding: 0 var(--spacing-10)
    }
}

.order-summary__products {
    margin-top: var(--spacing-7-half)
}

@media (min-width:1024px) {
    .order-summary__products {
        margin: var(--spacing-11) var(--spacing-2-half) 0 var(--spacing-2-half);
        max-height: var(--maxHeight, 231px);
        overflow: auto
    }
    .order-summary--no-sticky .order-summary__products {
        max-height: unset
    }
}

.order-summary__totals {
    font-weight: var(--font-weight-semibold);
    line-height: var(--line-height-2xl);
    margin-top: var(--spacing-7-half)
}

@media (min-width:1024px) {
    .order-summary__totals {
        font-size: var(--font-size-xl);
        margin-top: var(--spacing-10)
    }
}

.order-summary__totals-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    border-top: 2px solid var(--colour-bg-contrast);
    justify-content: space-between;
    margin: 0 var(--spacing-5);
    padding: var(--spacing-4) 0
}

@media (min-width:1024px) {
    .order-summary__totals-row {
        margin: 0 var(--spacing-10);
        padding: var(--spacing-5) 0
    }
}

.order-summary__totals-row:last-child {
    border-bottom: 2px solid var(--colour-bg-black)
}

.order-summary__totals-value--discount {
    color: var(--colour-brand-primary)
}

.order-summary__final-total {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-semibold);
    justify-content: space-between;
    line-height: var(--line-height-2xl);
    margin-top: var(--spacing-5);
    padding: 0 var(--spacing-5)
}

@media (min-width:1024px) {
    .order-summary__final-total {
        font-size: var(--font-size-2xl);
        margin-top: var(--spacing-7-half);
        padding: 0 var(--spacing-10)
    }
}

.order-summary__continue-cta {
    margin-top: var(--spacing-5);
    padding: 0 var(--spacing-5)
}

@media (min-width:1024px) {
    .order-summary__continue-cta {
        margin-top: var(--spacing-10);
        padding: 0 var(--spacing-10)
    }
}

.order-summary-product__inner {
    display: grid;
    gap: 0 var(--spacing-5);
    grid-template-columns: auto auto;
    padding: var(--spacing-5);
    position: relative
}

@media (min-width:1024px) {
    .order-summary-product__inner {
        gap: 0 var(--spacing-9);
        padding: var(--spacing-5) var(--spacing-7-half)
    }
}

.order-summary-product__name {
    font-weight: var(--font-weight-semibold);
    line-height: var(--line-height-xl)
}

@media (min-width:1024px) {
    .order-summary-product__name {
        font-size: var(--font-size-xl)
    }
}

.order-summary-product__price {
    font-weight: var(--font-weight-semibold);
    justify-self: flex-end;
    line-height: var(--line-height-xl)
}

@media (min-width:1024px) {
    .order-summary-product__price {
        font-size: var(--font-size-xl)
    }
}

.order-summary-product__quantity-label {
    line-height: var(--line-height-xl);
    margin-top: var(--spacing-1-half)
}

@media (min-width:1024px) {
    .order-summary-product__quantity-label {
        font-size: var(--font-size-body-lg);
        margin-top: var(--spacing-2-half)
    }
}

.order-summary-product__quantity-value {
    justify-self: flex-end;
    line-height: var(--line-height-xl);
    margin-top: var(--spacing-1-half)
}

@media (min-width:1024px) {
    .order-summary-product__quantity-value {
        font-size: var(--font-size-body-lg);
        margin-top: var(--spacing-2-half)
    }
}

.order-summary-product__details-expander {
    grid-column: 1/-1;
    margin-top: var(--spacing-2-half)
}

.order-summary-product__details-expander-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--spacing-2);
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: var(--colour-brand-primary);
    font-size: var(--font-size-body-sm);
    font-weight: var(--font-weight-bold);
    text-align: left
}

.order-summary-product__details-expander-btn:after,
.order-summary-product__details-expander-btn:before {
    background-color: currentColor;
    content: "";
    display: block;
    height: 2px;
    width: 8px
}

.order-summary-product__details-expander-btn:after {
    position: absolute;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: .35s;
    transition: .35s
}

.order-summary-product__details-expander-btn--open:after {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg)
}

.order-summary-product__details {
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    position: relative;
    -webkit-transition: .35s;
    transition: .35s
}

.order-summary-product__details-inner {
    min-height: 0;
    -webkit-transition: .35s;
    transition: .35s;
    visibility: hidden
}

.order-summary-product__details--open {
    grid-template-rows: 1fr
}

.order-summary-product__details--open .order-summary-product__details-inner {
    visibility: visible
}

.order-summary-product__details:after {
    background: -webkit-gradient(linear, left top, left bottom, from(hsla(0, 0%, 7%, .05)), to(hsla(0, 0%, 7%, 0)));
    background: linear-gradient(180deg, hsla(0, 0%, 7%, .05), hsla(0, 0%, 7%, 0));
    content: "";
    height: 15px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.order-summary-product__details:before {
    background: -webkit-gradient(linear, left bottom, left top, from(hsla(0, 0%, 7%, .05)), to(hsla(0, 0%, 7%, 0)));
    background: linear-gradient(0deg, hsla(0, 0%, 7%, .05), hsla(0, 0%, 7%, 0));
    bottom: 0;
    content: "";
    height: 15px;
    left: 0;
    position: absolute;
    right: 0
}

.order-summary-product__details ul {
    padding: var(--spacing-5) var(--spacing-10)
}

.order-summary-product__details ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: var(--font-size-body-sm);
    gap: var(--spacing-3);
    line-height: var(--line-height-xl);
    margin: var(--spacing-2-half) 0
}

.order-summary-product__details ul li:before {
    font-family: icomoon;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    color: var(--colour-brand-primary);
    content: "\ea10";
    font-size: 10px;
    justify-content: center;
    margin-top: 5px
}





.sector_section .swiper-button-prev, .swiper-rtl .swiper-button-next {
    left: 0px !important;
}


.sector_section .swiper-button-next, .swiper-button-prev {
    position: relative !important;
}



.sector_section .swiper-button-next, .swiper-rtl .swiper-button-prev {
    right: 8px !important;
    left: 15px;
}

.sector_section .carousel-controls__arrows {
    top: 40px;
    right: 5rem;
    position: relative;
}

.sector_section .swiper-button-next:after, .swiper-button-prev:after {
 
    font-size: 15px !important; 
}

.sector_section .swiper-button-next, .swiper-button-prev {
    position: absolute;
    margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    background: #FE7C02 !important;
    padding: 0px;
    border: 0px !important;
}
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after{
    content: "next";
    left: 2px;
    font-weight: 600;
    position: relative;
}

.swiper-button-next:after, .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: 15px;
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1;
}
.right_arrow1 {
    position: absolute !important;
    left: 0rem !important;
}

.text-blue {
    color: #0069d9 !important;
}

i.icon-quotemark {
    font-family: icomoon !important;
}
.carousel-bullets {
    text-align: center;
    margin-top: 20px;
}

.carousel-bullet {
    display: inline-block;
    width: 30px;
    height: 4px;
    background: #000;
    border-radius: 2px;
    margin: 0 5px;
    cursor: pointer;
}

    .carousel-bullet.is-active {
        background: #fe7c02; /* or your theme color */
    }


.slider-container {
    display: flex;
    overflow: hidden;
    width: 1215px;
    margin: auto;
}

.slide-track2 {
    display: flex;
    transition: transform 0.5s ease;
}

.ml-0 { margin-left:2px !important;
}

.controls {
    margin-top: 20px;
    margin: auto;
    justify-content: space-between;
    margin-top: 20px;
    display: flex;
    align-items: center;
    width: 1308px;
}

    .controls button {
        background: #fd7c02;
        color: white;
        border: none;
        margin: 0 10px;
        margin-top: -30rem;
        padding: 2px 12px;
        width: 35px;
        height: 35px;
        cursor: pointer;
        font-size: 20px;
        border-radius: 50%;
    }

.dots {
    display: flex;
    gap: 5px;
    margin: auto;
    justify-content: center;
    margin-top: 15px;
}

.dot {
    width: 30px;
    height: 4px;
    background: #000;
    border-radius: 2px;
    cursor: pointer;
}

    .dot.active {
        background: #fd7c02;
    }


@media (min-width: 768px) and (max-width: 1024px) {

    .testimonial-large__content {
        position: relative;
        padding-top: 1.5rem;
        padding-bottom: 3rem;
        padding-left: var(--spacing-14);
        gap: 40px;
        flex: 1 1 400px;
        contain: size;
    }

    .elementor-9 .elementor-element.elementor-element-81d35a6 > .elementor-element-populated {
        padding: 0px 0px 0px 30px;
    }
    .elementor-9 .elementor-element.elementor-element-8265371 .ct-heading .item--title {
      
        font-size: 1.5rem; 
    }
    .testimonial-large__image {
        flex-shrink: 0;
        aspect-ratio: 435 / 500;
        flex: 1 1 435px;
        max-width: 44%;
    }

    .testimonial-large__content {
        padding-left: 6rem;
    }

    .testimonial-large__image {
        flex-shrink: 0;
        aspect-ratio: 435 / 500;
        flex: 1 1 435px;
        max-width: 44%;
    }

    .testimonials .btn-control {
        top: 50%;
        display: flex;
        position: absolute !important;
        z-index: 9999;
    }

    .testimonial-large__inner {
        flex-direction: row;
        gap: 0;
    }

    .testimonial-large__description {
        padding-right: 15px;
        overflow: auto;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .case-study-card {
   
        height: 400px;
    }
    .testimonial-large__content {
        position: relative;
        padding-top: 1.5rem;
        padding-bottom: 3rem;
        padding-left: var(--spacing-14);
        gap: 40px;
        flex: 1 1 400px;
        contain: size;
    }
    .testimonial-large__image {
        flex-shrink: 0;
        aspect-ratio: 435 / 500;
        flex: 1 1 435px;
        max-width: 44%;
    }
    .testimonial-large__content {
        padding-left: 6rem;
    }
    .testimonial-large__image {
        flex-shrink: 0;
        aspect-ratio: 435 / 500;
        flex: 1 1 435px;
        max-width: 44%;
    }
    .testimonials .btn-control {
        top: 50%;
        display: flex;
        position: absolute !important;
        z-index: 9999;
    }
    .testimonial-large__inner {
        flex-direction: row;
        gap: 0;
    }
  
    .testimonial-large__description {
        padding-right: 15px;
        overflow: auto;
    }
}

    @media (max-width: 768px) {
   
        .slider-container { 
            max-width: 650px;
        }
        .case-study-card__text {
            padding: 0rem 1.5rem;
        }
        .slide2 {
            margin-right: 2rem;
        }
    }
@media (max-width:480px) {
    .case-study-card { width:330px;
    }
    .case-study-card__text { 
        padding: 0rem 1.5rem; 
    }
    .slide2 {
        flex: 0 0 100%; /* Only 1 slide per view on smaller screens */
    }
 

    .testimonial-large__content {
        padding-top: 15px;
        padding-left: 15px;
        padding-right: 15px;
    }
    .testimonial-large__inner {
   
        gap: 2px;
    }
}

    @media (min-width: 1800px) {
    }