﻿:root {
    --brand-navy: #0d2c53;
    --brand-red: #d31a38;
    --crx-dot: #cfcfcf;
    --crx-dot-active: #9e9e9e;
    --crx-text: #222;
    --crx-muted: #6b6b6b;
    --crx-border: #e6e6e6;
    --crx-panel: #f6f6f6;
}

.bg-brand-navy {
    background-color: var(--brand-navy) !important;
}

.page-hero {
    color: #fff;
    padding-top: clamp(64px,12vw,140px);
    padding-bottom: clamp(32px,6vw,80px);
    text-align: center;
}

.page-hero--match {
    padding-top: clamp(96px,13vw,190px);
    padding-bottom: clamp(36px,6.5vw,82px);
}

.page-hero h1 {
    color: #fff;
    font-weight: 800;
    font-size: clamp(40px,5.6vw,64px);
    line-height: 1.1;
    margin: 0 0 .25rem 0;
}

.page-hero p {
    color: var(--brand-red);
    font-family: 'Exo', sans-serif;
    font-weight: 400;
    font-size: clamp(22px,2.3vw,32px);
    line-height: 1.25;
    letter-spacing: .2px;
    margin: 0;
}

@media (min-width:1400px) {
    .page-hero .container {
        max-width: 1240px;
    }
}

.crx-gallery {
    --gap: 22px;
    --perView: 4;
    margin: 0;
    padding: 0;
}

.crx-gallery_single {
    --gap: 22px;
    --perView: 1;
    margin: 0;
    padding: 0;
}

.crx-gallery__img__center {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    transition: filter 160ms ease;
    user-select: none;
    -webkit-user-drag: none
}

.CRX-GT__center {
    place-items: center;
}

.crx-gallery__title {
    color: var(--brand-navy);
    margin: 0 auto 22px;
    padding: 0 16px;
    text-align: center;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.06;
    font-size: clamp(28px, 3vw, 52px);
}


    .crx-gallery__title br {
        display: block;
        content: "";
    }

.crx-gallery__viewport {
    overflow: hidden;
    width: 100%;
    touch-action: pan-y;
    cursor: grab;
    user-select: none;
}

    .crx-gallery__viewport.is-dragging {
        cursor: grabbing;
    }

.crx-gallery__track {
    display: flex;
    gap: var(--gap);
    will-change: transform;
    transform: translate3d(0, 0, 0);
}

.crx-gallery__slide {
    margin: 0;
    flex: 0 0 calc((100% - (var(--gap) * (var(--perView) - 1))) / var(--perView));
}

.crx-gallery__slide_second {
    margin: 0;
    flex: 0 0 calc((100% - (var(--gap) * (var(--perView) - 1))) / var(--perView));
    align-content: center;
}

.CRX-GT__center {
    place-items: center;
}

.crx-gallery__zoomBtn {
    position: relative;
    display: block;
    width: 100%;
    border: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
}

.crx-gallery__img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 10 / 10;
    object-fit: cover;
    transition: filter 160ms ease;
    user-select: none;
    -webkit-user-drag: none;
}

.crx-gallery__img_second {
    display: block;
    width: 100%;
    height: auto;
    transition: filter 160ms ease;
    user-select: none;
    -webkit-user-drag: none;
}


.crx-gallery__zoomBtn:hover .crx-gallery__img,
.crx-gallery__zoomBtn:focus-visible .crx-gallery__img {
    filter: brightness(1.08);
}


.crx-gallery__caption {
    display: none !important;
}


@media (max-width: 1100px) {
    .crx-gallery {
        --perView: 3;
    }
}

@media (max-width: 820px) {
    .crx-gallery {
        --perView: 2;
    }
}

@media (max-width: 520px) {
    .crx-gallery {
        --perView: 1;
    }
}

/* ================= Lightbox ================= */
.crx-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
}

    .crx-lightbox.is-open {
        display: block;
    }

.crx-lightbox__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.78);
}

.crx-lightbox__panel {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 28px 14px;
}

.crx-lightbox__content {
    width: min(980px, 92vw);
    max-height: 88vh;
    display: grid;
    gap: 0;
    align-content: start;
}

.crx-lightbox__imgWrap {
    position: relative;
    display: grid;
    place-items: center;
}

.crx-lightbox__img {
    max-width: 100%;
    max-height: 78vh;
    height: auto;
    width: auto;
    display: block;
}

.crx-lightbox__caption {
    display: block;
    width: 100%;
    color: #fff;
    padding: 14px 16px;
    font-size: 16px;
    line-height: 1.35;
    text-align: center;
}

.crx-lightbox__btn,
.crx-lightbox__nav {
    position: absolute;
    border: 0;
    cursor: pointer;
    background: rgba(255, 255, 255, 0.92);
    color: #111;
    display: grid;
    place-items: center;
    border-radius: 999px;
}

.crx-lightbox__btn {
    top: 14px;
    width: 44px;
    height: 44px;
}

.crx-lightbox__close {
    right: 14px;
}

.crx-lightbox__nav {
    top: 50%;
    translate: 0 -50%;
    width: 52px;
    height: 52px;
}

.crx-lightbox__prev {
    left: 14px;
}

.crx-lightbox__next {
    right: 14px;
}



.crx-visit {
    background-color: #f1f1f1 !important;
    padding: 30px 0;
}

.crx-visit__container {
    max-width: 1400px;
}

.crx-visit__row {
    align-items: start;
    row-gap: 28px;
}

.crx-visit__title {
    margin: 0 0 14px 0;
    color: var(--brand-navy);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.08;
    font-size: clamp(34px, 2.6vw, 44px);
}


.crx-visit__text {
    margin: 0 0 18px 0;
    color: #222;
    font-size: 16px;
    line-height: 1.75;
    /*max-width: 540px;*/
}

.crx-visit__link {
    display: inline-block !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
    color: var(--brand-navy) !important;
    font-weight: 700;
    font-size: 18px;
    float: none !important;
    position: static !important;
    justify-content: flex-start !important;
    align-items: initial !important;
}

    .crx-visit__link::before,
    .crx-visit__link::after {
        content: none !important;
        display: none !important;
    }

.crx-visit__right {
    display: flex;
    justify-content: flex-end;
}

.crx-visit__img {
    width: min(820px, 100%);
    height: auto;
    display: block;
    user-select: none;
    -webkit-user-drag: none;
}

@media (max-width: 991.98px) {
    .crx-visit__right {
        justify-content: flex-start;
    }
}



:root {
    --brand-navy: #0d2c53;
    --brand-red: #d31a38;
}

.crx-contactIntro {
    background: #fff;
    padding: 90px 0 70px;
}

.crx-contactIntro__container {
    max-width: 1200px;
    text-align: center;
}

.crx-contactIntro__title {
    margin: 0 0 18px;
    color: var(--brand-navy);
    font-weight: 500;
    letter-spacing: -0.01em;
    line-height: 1.15;
    font-size: clamp(34px, 2.7vw, 44px);
}

.crx-contactIntro__text {
    margin: 0 auto 8px;
    color: #2a2a2a;
    font-size: 18px;
    line-height: 1.65;
    max-width: 980px;
}

.crx-contactIntro__text--secondary {
    margin-bottom: 0;
}
/*Our Story*/
.crx-tkc {
    background: #fff;
   /* padding: 56px 0 44px;*/
}

.crx-tkc__container {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
}

.crx-tkc__title {
    margin: 0 0 34px;
    text-align: center;
    color: var(--brand-navy);
    font-weight: 800;
    letter-spacing: -0.01em;
    line-height: 1.08;
}

.crx-tkc__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 36px;
    align-items: start;
}

.crx-tkc__bigImg {
    width: 100%;
    display: block;
    height: auto;
    user-select: none;
    -webkit-user-drag: none;
}

.crx-tkc__right {
    color: #2a2a2a;
    
    line-height: 1.75;
}

.crx-tkc__rightTop {
    display: grid;
    grid-template-columns: 170px 1fr;
    gap: 18px;
    align-items: start;
    margin-bottom: 14px;
}

.crx-tkc__headshot {
    width: 170px;
    height: 170px;
    object-fit: cover;
    display: block;
    user-select: none;
    -webkit-user-drag: none;
}

.crx-tkc__intro {
    margin-top: 2px;
}

.crx-tkc__p {
    margin: 0 0 14px;
}

.crx-tkc__p--last {
    margin-bottom: 0;
}

@media (max-width: 991px) {
    .crx-tkc__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .crx-tkc__rightTop {
        grid-template-columns: 150px 1fr;
    }

    .crx-tkc__headshot {
        width: 150px;
        height: 150px;
    }
}

@media (max-width: 520px) {
    .crx-tkc__rightTop {
        grid-template-columns: 1fr;
    }

    .crx-tkc__headshot {
        width: 160px;
        height: 160px;
    }
}


.crx-navySplit {
    background: var(--brand-navy);
    padding: 70px 0 90px;
}

.crx-navySplit__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 22px;
}

.crx-navySplit__grid {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 44px;
    align-items: start;
}

.crx-navySplit__title {
    margin: 0 0 22px 0;
    color: #fff;
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.08;
    font-size: clamp(34px, 3vw, 46px);
}

.crx-navySplit__p {
    margin: 0 0 18px 0;
    color: #fff;
    
    line-height: 1.85;
    max-width: 520px;
}

    .crx-navySplit__p:last-child {
        margin-bottom: 0;
    }

.crx-navySplit__right {
    display: flex;
    justify-content: flex-end;
}

.crx-navySplit__imgFrame {
    background: #fff;
    width: min(520px, 100%);
}

.crx-navySplit__img {
    width: 100%;
    height: auto;
    display: block;
    user-select: none;
    -webkit-user-drag: none;
}

@media (max-width: 991.98px) {
    .crx-navySplit {
        padding: 54px 0 66px;
    }

    .crx-navySplit__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .crx-navySplit__right {
        justify-content: flex-start;
    }

    .crx-navySplit__p {
        max-width: 100%;
    }
}

.crx-imgText {
    background: #fff;
    padding: 70px 0;
}

.crx-imgText__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 22px;
}

.crx-imgText__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 38px;
    align-items: start;
}

.crx-imgText__img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 2px;
    user-select: none;
    -webkit-user-drag: none;
}

.crx-imgText__right {
    color: #111;
}

.crx-imgText__lead {
    margin: 0 0 16px 0;
    /*/*font-size: 14px;*/;*/
    line-height: 1.7;
}

.crx-imgText__lead--spaced {
    margin-top: 18px;
}

.crx-imgText__p {
    margin: 0 0 16px 0;
    /*font-size: 13px;*/
    line-height: 1.85;
    color: #222;
}

@media (max-width: 991.98px) {
    .crx-imgText {
        padding: 52px 0;
    }

    .crx-imgText__grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }
}

.crx-videoOnly {
    background: #fff;
    padding: 0px 0;
}

.crx-videoOnly__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 22px;
}

.crx-videoOnly__frame {
    width: 100%;
    background: #fff;
    border: 1px solid #ddd;
    overflow: hidden;
    box-shadow: 0 0 0 rgba(0,0,0,0);
}

.crx-videoOnly__iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 0;
}

.crx-textBlock {
    background: #fff;
}

.crx-textBlock__container {
    max-width: 760px;
    margin: 0 auto;
    padding: 0 22px;
}

    .crx-textBlock__container p {
        margin: 0;
        color: #222;
        font-size: 15px;
        line-height: 1.85;
    }

        .crx-textBlock__container p + p {
            margin-top: 18px;
        }

.crx-scrollHint {
    background: #fff;
}

.crx-scrollHint__inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 22px;
    text-align: center;
}

.crx-scrollHint__text {
    margin: 0;
    color: var(--brand-navy, #0d2c53);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.35;
}

.crx-scrollHint__arrow {
    display: block;
    width: 64px;
    height: auto;
    margin: 26px auto 0;
    user-select: none;
    -webkit-user-drag: none;
    pointer-events: none;
}


.crx-servicesCarousel {
    --gap: 56px;
    --perView: 3;
    padding: 78px 0 64px;
    background: #fff;
}

.crx-servicesCarousel__container {
    max-width: 1200px;
}

.crx-servicesCarousel__title {
    margin: 0;
    text-align: center;
    color: var(--brand-navy);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.05;
    font-size: clamp(44px, 4.2vw, 60px);
}

.crx-servicesCarousel__subtitle {
    margin: 10px 0 44px;
    text-align: center;
    color: #111;
    /*/*font-size: 14px;*/;*/
    letter-spacing: 0.2px;
}

.crx-servicesCarousel__viewport {
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding: 8px 0 18px;
}

    .crx-servicesCarousel__viewport::-webkit-scrollbar {
        display: none;
    }

.crx-servicesCarousel__track {
    display: flex;
    gap: var(--gap);
    align-items: stretch;
    padding: 0 6px;
}

.crx-serviceCard {
    flex: 0 0 calc((100% - (var(--gap) * (var(--perView) - 1))) / var(--perView));
    scroll-snap-align: start;
    text-align: center;
    padding: 10px 0 0;
}

.crx-serviceCard__icon {
    color: var(--brand-red);
    display: grid;
    place-items: center;
    height: 44px;
    margin-bottom: 14px;
}

.crx-serviceCard__title {
    margin: 0 0 10px;
    color: var(--brand-navy);
    font-weight: 800;
    letter-spacing: -0.01em;
    line-height: 1.05;
    font-size: clamp(24px, 2.2vw, 30px);
}

.crx-serviceCard__text {
    margin: 0 auto 18px;
    color: #333;
    /*/*font-size: 14px;*/;*/
    line-height: 1.65;
    max-width: 320px;
}

.crx-serviceCard__btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--brand-red);
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    /*font-size: 12px;*/
    padding: 7px 16px;
    border-radius: 999px;
}

.crx-serviceCard__btnIcon {
    display: inline-grid;
    place-items: center;
    width: 18px;
    height: 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.18);
    line-height: 1;
}

.crx-servicesCarousel__nav {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
}

.crx-servicesCarousel__arrow {
    width: 34px;
    height: 34px;
    border: 0;
    background: transparent;
    color: #bdbdbd;
    font-size: 34px;
    line-height: 1;
    padding: 0;
    cursor: pointer;
}

.crx-servicesCarousel__dots {
    display: flex;
    align-items: center;
    gap: 10px;
}

.crx-servicesCarousel__dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #d0d0d0;
    border: 0;
    padding: 0;
    cursor: pointer;
}

    .crx-servicesCarousel__dot.is-active {
        background: #9f9f9f;
    }

@media (max-width: 991.98px) {
    .crx-servicesCarousel {
        --perView: 2;
        --gap: 34px;
    }
}

@media (max-width: 575.98px) {
    .crx-servicesCarousel {
        --perView: 1;
        --gap: 22px;
    }

    .crx-serviceCard__text {
        max-width: 360px;
    }
}

.crx-services {
    background: #fff;
    padding: 84px 0 64px;
}

.crx-services__container {
    max-width: 1200px;
}

.crx-services__top {
    text-align: center;
    margin-bottom: 34px;
}

.crx-services__title {
    margin: 0 0 10px;
    color: var(--crx-navy);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -0.01em;
    font-size: clamp(42px, 4.2vw, 56px);
}

.crx-services__subtitle {
    color: #111;
    /*/*font-size: 14px;*/;*/
    letter-spacing: 0.06em;
}

.crx-services__carousel .carousel-inner {
    overflow: visible;
}

.crx-services__row {
    margin-left: auto;
    margin-right: auto;
    max-width: 1100px;
}

.crx-services__col {
    padding: 0 34px;
}

.crx-svcCard {
    text-align: center;
    padding: 10px 10px 0;
}

.crx-svcCard__icon {
    height: 44px;
    display: grid;
    place-items: center;
    margin-bottom: 16px;
}

.crx-svcCard__fa {
    color: var(--crx-red);
    font-size: 28px;
    line-height: 1;
}

.crx-svcCard__title {
    color: var(--crx-navy);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -0.01em;
    font-size: clamp(22px, 2vw, 30px);
    margin: 0 0 10px;
}

.crx-svcCard__desc {
    margin: 0 auto 18px;
    color: #2a2a2a;
    /*/*font-size: 14px;*/;*/
    line-height: 1.85;
    max-width: 280px;
}

.crx-svcCard__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 18px;
    border-radius: 999px;
    background: #b70f2a;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 700;
    /*font-size: 12px;*/
}

.crx-svcCard__arrow {
    font-size: 16px;
    line-height: 1;
}

.crx-services__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-top: 38px;
    user-select: none;
}

.crx-services__arrowBtn {
    border: 0;
    background: transparent;
    color: #b8b8b8;
    font-size: 22px;
    padding: 6px 10px;
    cursor: pointer;
}

.crx-services__dots {
    display: flex;
    align-items: center;
    gap: 10px;
}

.crx-services__dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    border: 0;
    background: var(--crx-dot);
    padding: 0;
    cursor: pointer;
}

    .crx-services__dot.is-active {
        background: var(--crx-dot-active);
    }

@media (max-width: 991.98px) {
    .crx-services__col {
        padding: 0 18px;
    }
}

@media (max-width: 767.98px) {
    .crx-services {
        padding: 70px 0 54px;
    }

    .crx-services__row {
        row-gap: 34px;
    }

    .crx-services__col {
        padding: 0 10px;
    }

    .crx-svcCard__desc {
        max-width: 420px;
    }
}


#crxTrustContact-1 {
    --navy: var(--crx-navy, #0d2c53);
    --ink: var(--crx-ink, #ffffff);
    --red: var(--crx-red, #ac0b27);
    --red-dark: #8b0e1d;
    --light: #f3f5f7;
}

    #crxTrustContact-1 .tc-contact {
        background: var(--light);
        color: var(--navy);
        padding: clamp(32px, 6vw, 56px) 0;
    }

    #crxTrustContact-1 .tc-quote {
        font-weight: 800;
        font-size: clamp(22px, 3vw, 38px);
    }

    #crxTrustContact-1 .tc-phone {
        font-weight: 800;
        font-size: clamp(26px, 3.5vw, 46px);
    }

    #crxTrustContact-1 .tc-or {
        opacity: 0.7;
        margin: 0.25rem 0;
    }

    #crxTrustContact-1 .tc-email {
        color: inherit;
        text-decoration: none;
        border-bottom: 1px solid transparent;
    }

        #crxTrustContact-1 .tc-email:hover {
            border-bottom-color: currentColor;
        }

    #crxTrustContact-1 .tc-cta-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        width: auto !important;
        min-width: 180px !important;
        padding: 12px 28px !important;
        border-radius: 999px !important;
        background-color: var(--crx-red, #ac0b27) !important;
        color: var(--crx-ink, #ffffff) !important;
        font-weight: 800 !important;
        font-size: 16px !important;
        border: none !important;
        cursor: pointer !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        transition: background 0.2s ease, transform 0.15s ease !important;
        line-height: 1 !important;
        box-shadow: 0 2px 0 rgba(0, 0, 0, 0.25) !important;
    }

        #crxTrustContact-1 .tc-cta-btn:hover {
            background-color: #8b0e1d !important;
            transform: translateY(-2px) !important;
        }

        #crxTrustContact-1 .tc-cta-btn:active {
            transform: translateY(0) !important;
        }

        #crxTrustContact-1 .tc-cta-btn i {
            font-size: 1rem !important;
            line-height: 1 !important;
            position: relative !important;
            top: 1px !important;
        }

.crx-competition {
    background: #fff;
}

.crx-competition__inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 22px;
    justify-items: left;
}

.crx-competition__title {
    margin: 0 0 14px 0;
    color: var(--crx-navy);
    letter-spacing: -0.015em;
    line-height: 1.05;
    text-align: center;
}

.crx-competition__body {
    max-width: 1100px;
    margin: 0 auto;
}

    .crx-competition__body p {
        color: #222;
        /*/*font-size: 14px;*/;*/
    }

        .crx-competition__body p:last-child {
            margin-bottom: 0;
        }

    .crx-competition__body strong {
        font-weight: 800;
        color: #111;
    }

@media (max-width: 768px) {
    .crx-competition {
        padding: 52px 0 60px;
    }

    .crx-competition__body p {
        /*/*font-size: 14px;*/;*/
        line-height: 1.85;
    }
}



:root {
    --crx-navy: var(--brand-navy, #0d2c53);
    --crx-cta-border: #e7e7e7;
    --crx-cta-bg: #f7f7f7;
    --crx-cta-green: #74ad3a;
    --crx-cta-green-dk: #5f9630;
}

.crx-ctaBox {
    background: transparent;
}

.crx-ctaBox__inner {
    max-width: 720px;
    margin: 0 auto;
    background: var(--crx-cta-bg);
    border: 1px solid var(--crx-cta-border);
    border-radius: 4px;
    padding: 26px 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
}

.crx-ctaBox__left {
    min-width: 0;
}

.crx-ctaBox__title {
    margin: 0 0 8px 0;
    color: var(--crx-navy);
    font-weight: 500;
    letter-spacing: -0.01em;
    line-height: 1.05;
    font-size: clamp(30px, 3vw, 40px);
}

.crx-ctaBox__text {
    margin: 0;
    color: #2a2a2a;
    font-size: 13px;
    line-height: 1.6;
    max-width: 420px;
}

.crx-ctaBox__right {
    flex: 0 0 auto;
}

.crx-ctaBox__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 18px;
    min-height: 38px;
    border-radius: 4px;
    background: var(--crx-cta-green);
    border: 1px solid rgba(0,0,0,.12);
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    /*font-size: 12px;*/
    white-space: nowrap;
}

    .crx-ctaBox__btn:hover {
        background: var(--crx-cta-green-dk);
        color: #fff;
        text-decoration: none;
    }

@media (max-width: 560px) {
    .crx-ctaBox__inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .crx-ctaBox__text {
        max-width: none;
    }
}

.crx-simpleIntro {
    background: #fff;
}

.crx-simpleIntro__inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 18px;
    text-align: center;
}

.crx-simpleIntro__title {
    margin: 0 0 10px 0;
    color: var(--crx-navy);
    font-weight: 500;
    letter-spacing: -0.01em;
    line-height: 1.2;
    font-size: clamp(22px, 2.2vw, 32px);
}

.crx-simpleIntro__text {
    margin: 0 auto 6px;
    color: #1f1f1f;
    /*/*font-size: 12px;*/*/
    line-height: 1.7;
    max-width: 900px;
}

.crx-simpleIntro__text--secondary {
    margin-bottom: 0;
}

.crx-videoBlock {
    background: #fff;
    padding: 0px 0 0px;
}

.crx-videoBlock__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 18px;
}

.crx-videoBlock__title {
    margin: 0 0 26px 0;
    text-align: center;
    color: var(--crx-navy);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.1;
    font-size: clamp(28px, 3.4vw, 44px);
}

.crx-videoBlock__frame {
    display: flex;
    justify-content: center;
}

.crx-videoBlock__ratio {
    width: min(980px, 100%);
    aspect-ratio: 16 / 9;
    background: #000;
    position: relative;
}

.crx-videoBlock__iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

.crx-come {
    background: #fff;
}

.crx-come__inner {
    max-width: 1220px;
    margin: 0 auto;
    padding: 0 18px;
}

.crx-come__grid {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 48px;
    align-items: start;
}

.crx-come__title {
    margin: 0 0 18px;
    color: var(--crx-navy);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.02;
    font-size: clamp(34px, 3.2vw, 52px);
}

.crx-come__p {
    margin: 0 0 14px;
    color: var(--crx-text);
   /* /*font-size: 14px;*/;*/
    line-height: 1.9;
    max-width: 620px;
}

.crx-come__list {
    margin: 8px 0 18px 18px;
    padding: 0;
    color: var(--crx-text);
    /*/*font-size: 14px;*/;*/
    line-height: 1.9;
}

    .crx-come__list li {
        margin: 6px 0;
    }

    .crx-come__list a,
    .crx-come__learn {
        color: var(--crx-navy);
        text-decoration: underline;
        text-underline-offset: 2px;
    }

.crx-come__learn {
    display: inline-block;
    margin-top: 10px;
    font-size: 13px;
}

.crx-come__right {
    display: grid;
    gap: 18px;
}

.crx-come__cta {
    background: var(--crx-panel);
    border: 1px solid var(--crx-border);
    border-radius: 4px;
    padding: 18px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.crx-come__ctaTitle {
    color: var(--crx-navy);
    font-weight: 800;
    letter-spacing: -0.01em;
    font-size: 18px;
    line-height: 1.1;
    margin-bottom: 6px;
}

.crx-come__ctaSub {
    color: var(--crx-text);
    font-size: 13px;
    line-height: 1.45;
}

.crx-come__ctaBtn {
    flex: 0 0 auto;
    background: var(--crx-red);
    color: #fff;
    border-radius: 4px;
    padding: 10px 16px;
    font-weight: 800;
    letter-spacing: .02em;
    font-size: 11px;
    text-decoration: none;
    white-space: nowrap;
}

    .crx-come__ctaBtn:hover {
        filter: brightness(0.95);
    }

.crx-come__imageWrap {
    border-radius: 2px;
    overflow: hidden;
}

.crx-come__image {
    display: block;
    width: 100%;
    height: auto;
}

@media (max-width: 992px) {
    .crx-come__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .crx-come__p {
        max-width: none;
    }
}

@media (max-width: 520px) {
    .crx-come__cta {
        flex-direction: column;
        align-items: flex-start;
    }

    .crx-come__ctaBtn {
        width: 100%;
        text-align: center;
    }
}

.crx-contactCardSection {
    background: #fff;
}

.crx-contactCardSection__inner {
    display: grid;
    place-items: center;
}

.crx-contactCard {
    width: min(520px, 92vw);
    background: var(--crx-panel);
    border: 1px solid var(--crx-border);
    border-radius: 4px;
    padding: 28px 30px 26px;
}

.crx-contactCard__title {
    margin: 0 0 12px;
    color: var(--crx-navy);
    font-weight: 300;
    letter-spacing: -0.01em;
    line-height: 1.05;
    font-size: 34px;
}

.crx-contactCard__text {
    margin: 0 0 18px;
    color: var(--crx-navy);
    font-size: 16px;
    line-height: 1.55;
}

.crx-contactCard__link {
    color: var(--crx-navy);
    text-decoration: none;
}

    .crx-contactCard__link:hover {
        text-decoration: underline;
        text-underline-offset: 2px;
    }

.crx-contactCard__btn {
    display: inline-block;
    background: var(--crx-red);
    color: #fff;
    border-radius: 4px;
    padding: 14px 26px;
    font-weight: 700;
    font-size: 13px;
    text-decoration: none;
}

    .crx-contactCard__btn:hover {
        filter: brightness(0.95);
    }

@media (max-width: 520px) {
    .crx-contactCardSection {
        padding: 70px 0 80px;
    }

    .crx-contactCard {
        padding: 22px 20px;
    }

    .crx-contactCard__title {
        font-size: 30px;
    }
}


.crx-industryGrid {
    padding: 0px 0;
}

.crx-industryGrid__container {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 24px;
}


.crx-industryGrid__row {
    display: grid;
    grid-template-columns: minmax(0, 520px) minmax(0, 420px);
    justify-content: center;
    align-items: center;
    column-gap: clamp(26px, 4.2vw, 64px);
    row-gap: 18px;
    padding: 15px 0;
}


.crx-industryGrid__row--rev {
    grid-template-columns: minmax(0, 420px) minmax(0, 520px);
}


.crx-industryGrid__content {
    max-width: 520px;
    justify-self: start;
}


.crx-industryGrid__media {
    margin: 0;
    width: 100%;
    max-width: 420px;
    justify-self: end;
}

.crx-industryGrid__row--rev .crx-industryGrid__media {
    justify-self: start;
}

.crx-industryGrid__img {
    display: block;
    width: 100%;
    height: auto;
}

.crx-industryGrid__title {
    margin: 0 0 10px;
    /*font-size: 14px;*/;
    font-weight: 700;
    line-height: 1.25;
    color: #111;
}

.crx-industryGrid__text {
    margin: 0;
    font-size: 13px;
    line-height: 1.75;
    color: #222;
}

.crx-industryGrid__link {
    color: var(--brand-navy);
    text-decoration: underline;
    text-underline-offset: 2px;
}


.crx-industryGrid :where(p, h4, figure) {
    margin-top: 0;
}


@media (max-width: 900px) {
    .crx-industryGrid__row,
    .crx-industryGrid__row--rev {
        grid-template-columns: minmax(0, 620px);
        justify-content: center;
        column-gap: 0;
        padding: 26px 0;
    }

    .crx-industryGrid__media {
        justify-self: center;
        max-width: 620px;
    }
}

.crx-connect {
    background: #fff;
}

.crx-connect__container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 24px;
    text-align: center;
}

.crx-connect__title {
    margin: 0 0 10px;
    font-size: 28px;
    font-weight: 500;
    line-height: 1.25;
    color: var(--brand-navy);
}

.crx-connect__lead {
    margin: 0;
    /*/*font-size: 12px;*/*/
    line-height: 1.6;
    color: #222;
}

    .crx-connect__lead + .crx-connect__lead {
        margin-top: 2px;
    }


.crx-connectCard {
    margin: 48px auto 0;
    max-width: 650px;
    background: #f6f6f6;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    padding: 22px 26px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    text-align: left;
}

.crx-connectCard__title {
    margin: 0 0 8px;
    font-size: 32px;
    font-weight: 300;
    line-height: 1.05;
    color: var(--brand-navy);
}

.crx-connectCard__desc {
    margin: 0;
    font-size: 13px;
    line-height: 1.4;
    color: var(--brand-navy);
}

.crx-connectCard__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 42px;
    padding: 0 18px;
    border-radius: 4px;
    background: #c8102e;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-decoration: none;
    white-space: nowrap;
}

    .crx-connectCard__btn:hover,
    .crx-connectCard__btn:focus-visible {
        filter: brightness(0.95);
        text-decoration: none;
    }

@media (max-width: 768px) {
    .crx-connect__title {
        font-size: 22px;
    }

    .crx-connectCard {
        max-width: 560px;
        flex-direction: column;
        align-items: flex-start;
    }

    .crx-connectCard__btn {
        align-self: flex-end;
    }
}

.crx-examples {
    background: #fff;
}

.crx-examples__container {
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 18px;
}

.crx-examples__title {
    margin: 0 0 18px;
    /*font-size: 14px;*/;
    font-weight: 500;
    color: var(--brand-navy);
}

.crx-masonry {
    column-count: 3;
    column-gap: 26px;
}

.crx-masonry__item {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    display: inline-block;
    width: 100%;
    margin: 0 0 26px;
}

.crx-card {
    background: #f6f6f6;
    border: 1px solid #e6e6e6;
    border-radius: 3px;
    overflow: hidden;
}

.crx-card__media {
    margin: 0;
}

.crx-card__img {
    display: block;
    width: 100%;
    height: auto;
}

.crx-card__body {
    padding: 12px 12px 14px;
}

.crx-card__heading {
    display: inline-block;
    font-size: 11px;
    line-height: 1.35;
    font-weight: 600;
    color: var(--brand-navy);
    text-decoration: underline;
    margin-bottom: 8px;
}

.crx-card__text {
    margin: 0 0 12px;
    font-size: 10.5px;
    line-height: 1.55;
    color: #111;
}

.crx-card__btn {
    display: inline-block;
    padding: 6px 10px;
    border-radius: 2px;
    background: #c8102e;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    text-decoration: none;
}

    .crx-card__btn:hover,
    .crx-card__btn:focus-visible {
        filter: brightness(0.95);
    }

@media (max-width: 992px) {
    .crx-masonry {
        column-count: 2;
    }
}

@media (max-width: 600px) {
    .crx-masonry {
        column-count: 1;
    }
}

.crx-mms {
    background: #ffffff;
    margin-bottom: 0px;
    /*padding: 2.35rem 0 2.1rem;*/
}

.crx-mms__row {
    align-items: flex-start;
}

.crx-mms__title {
    margin: 0 0 1.15rem;
    color: #0d2c53;
    font-weight: 900;
    font-size: 2.35rem;
    line-height: 1.05;
    letter-spacing: -0.2px;
}

.crx-mms__text {
    margin: 0 0 1rem;
    color: #3a3a3a;
    font-size: 1rem;
    line-height: 1.65;
    max-width: 520px;
}

.crx-mms__text--bold {
    font-weight: 800;
    color: #2f2f2f;
    margin-top: 0.4rem;
}

.crx-mms__right {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.crx-mms__media {
    width: 100%;
    max-width: 700px;
}

.crx-mms__img {
    display: block;
    width: 100%;
    height: auto;
}

.crx-mms__btn {
    margin-top: 1.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.85rem 2.25rem;
    background: #c30f2d;
    color: #ffffff;
    font-weight: 800;
    font-size: 0.95rem;
    text-decoration: none;
    border-radius: 0.35rem;
    box-shadow: 0 2px 0 rgba(0, 0, 0, 0.12);
    border: 1px solid rgba(0, 0, 0, 0.06);
    white-space: nowrap;
}

    .crx-mms__btn:hover {
        background: #a80d27;
        color: #ffffff;
        text-decoration: none;
    }

    .crx-mms__btn:focus-visible {
        outline: none;
        box-shadow: 0 0 0 3px rgba(13, 44, 83, 0.25), 0 2px 0 rgba(0, 0, 0, 0.12);
    }

@media (min-width: 992px) {
    .crx-mms__row {
        column-gap: 2.25rem;
    }
}

@media (max-width: 991.98px) {
    .crx-mms__title {
        font-size: 1.65rem;
    }

    .crx-mms__text {
        max-width: none;
    }

    .crx-mms__right {
        margin-top: 1.25rem;
    }
}

.crx-range {
    background: #ffffff;
}

.crx-range__kicker {
    margin: 0 0 1.25rem;
    text-align: center;
    color: #0d2c53;
    font-weight: 800;
    font-size: 2rem;
}

.crx-range__intro {
    display: grid;
    grid-template-columns: 84px 1fr;
    gap: 1.05rem;
    align-items: start;
    max-width: 900px;
    margin: 0 auto 1.1rem;
}

.crx-range__num {
    color: #0d2c53;
    font-weight: 900;
    font-size: 4.25rem;
    line-height: 0.9;
    letter-spacing: -1px;
    text-align: center;
    padding-top: 0.15rem;
}

.crx-range__title {
    margin: 0 0 0.35rem;
    color: #0d2c53;
    font-weight: 900;
    font-size: 0.92rem;
}

.crx-range__p {
    margin: 0 0 0.65rem;
    color: #3a3a3a;
    font-size: 0.72rem;
    line-height: 1.6;
}

.crx-range__media {
    margin: 0 auto;
    max-width: 900px;
}

.crx-range__img {
    display: block;
    width: 100%;
    height: auto;
}

.crx-range__cta {
    display: flex;
    justify-content: center;
    margin: 1.05rem 0 1.2rem;
}

.crx-range__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.55rem 1.1rem;
    background: #c30f2d;
    color: #ffffff;
    text-decoration: none;
    font-weight: 800;
    font-size: 0.7rem;
    border-radius: 0.25rem;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow: 0 2px 0 rgba(0,0,0,0.12);
    white-space: nowrap;
}

    .crx-range__btn:hover {
        background: #a80d27;
        color: #ffffff;
        text-decoration: none;
    }

.crx-range__cols {
    max-width: 900px;
    margin: 0 auto;
}

.crx-range__colTitle {
    margin: 0.75rem 0 0.5rem;
    text-align: center;
    color: #0d2c53;
    font-weight: 900;
    font-size: 2rem;
}

.crx-range__list {
    margin: 0;
    padding-left: 1.15rem;
    color: #2f2f2f;
    font-size: 1rem;
    line-height: 1.55;
}

    .crx-range__list li {
        margin: 0.4rem 0;
    }

@media (max-width: 575.98px) {
    .crx-range__intro {
        grid-template-columns: 64px 1fr;
    }

    .crx-range__num {
        font-size: 3.3rem;
    }
}

.crx-svc2 {
    background: #ffffff;
    /*padding: 2.15rem 0 2.75rem;*/
}

    .crx-svc2 .container {
        max-width: 980px;
    }

.crx-svc2__wrap {
    display: grid;
    grid-template-columns: 58% 42%;
    gap: 2rem;
    align-items: start;
}

.crx-svc2__media {
    display: grid;
    gap: 0.9rem;
}

.crx-svc2__imgBox {
    margin: 0;
    width: 100%;
}

.crx-svc2__img {
    display: block;
    width: 100%;
    height: auto;
}

.crx-svc2__head {
    display: grid;
    grid-template-columns: 86px 1fr;
    gap: 0.85rem;
    align-items: start;
    margin-bottom: 0.65rem;
}

.crx-svc2__num {
    color: #0d2c53;
    font-weight: 900;
    font-size: 5.1rem;
    line-height: 0.9;
    letter-spacing: -1px;
    text-align: right;
    padding-top: 0.05rem;
}

.crx-svc2__title {
    margin: 0;
    color: #0d2c53;
    font-weight: 900;
    font-size: 1.35rem;
    line-height: 1.05;
}

.crx-svc2__p {
    margin: 0 0 0.85rem;
    color: #3a3a3a;
    font-size: 1rem;
    line-height: 1.65;
}

.crx-svc2__cta {
    display: flex;
    justify-content: center;
    margin-top: 1.25rem;
}

.crx-svc2__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 1.35rem;
    background: #c30f2d;
    color: #ffffff;
    text-decoration: none;
    font-weight: 800;
    font-size: 0.72rem;
    border-radius: 0.25rem;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow: 0 2px 0 rgba(0,0,0,0.12);
    white-space: nowrap;
}

    .crx-svc2__btn:hover {
        background: #a80d27;
        color: #ffffff;
        text-decoration: none;
    }

@media (max-width: 991.98px) {
    .crx-svc2__wrap {
        grid-template-columns: 1fr;
    }

    .crx-svc2__head {
        grid-template-columns: 72px 1fr;
    }

    .crx-svc2__num {
        font-size: 4.1rem;
    }
}


.crx-svc3 {
    background: #ffffff;
}

    .crx-svc3 .container {
        max-width: 1020px;
    }

.crx-svc3__wrap {
    display: grid;
    grid-template-columns: 33% 67%;
    gap: 2rem;
    align-items: start;
}

.crx-svc3__head {
    display: grid;
    grid-template-columns: 86px 1fr;
    gap: 0.85rem;
    align-items: start;
    margin-bottom: 0.75rem;
}

.crx-svc3__num {
    color: #0d2c53;
    font-weight: 900;
    font-size: 5.1rem;
    line-height: 0.9;
    letter-spacing: -1px;
    text-align: right;
    padding-top: 0.05rem;
}

.crx-svc3__title {
    margin: 0;
    color: #0d2c53;
    font-weight: 900;
    font-size: 1.35rem;
    line-height: 1.05;
}


.crx-svc3__p {
    margin: 0;
    color: #3a3a3a;
    font-size: 1rem;
    line-height: 1.75;
    max-width: 340px;
}


.crx-svc3__imgBox {
    margin: 0;
    width: 100%;
}

.crx-svc3__img {
    display: block;
    width: 100%;
    height: auto;
}


@media (max-width: 991.98px) {
    .crx-svc3__wrap {
        grid-template-columns: 1fr;
    }

    .crx-svc3__p {
        max-width: none;
    }

    .crx-svc3__head {
        grid-template-columns: 72px 1fr;
    }

    .crx-svc3__num {
        font-size: 4.1rem;
    }

    .crx-svc3__media {
        margin-top: 1.25rem;
    }
}

.crx-svc4 {
    background: #ffffff;
}

    .crx-svc4 .container {
        max-width: 1020px;
    }

.crx-svc4__wrap {
    display: grid;
    grid-template-columns: 62% 38%;
    gap: 2rem;
    align-items: start;
}

.crx-svc4__imgBox {
    margin: 0;
    width: 100%;
}

.crx-svc4__img {
    display: block;
    width: 100%;
    height: auto;
}

.crx-svc4__head {
    display: grid;
    grid-template-columns: 86px 1fr;
    gap: 0.85rem;
    align-items: start;
    margin-bottom: 0.65rem;
}

.crx-svc4__num {
    color: #0d2c53;
    font-weight: 900;
    font-size: 5.1rem;
    line-height: 0.9;
    letter-spacing: -1px;
    text-align: right;
    padding-top: 0.05rem;
}

.crx-svc4__title {
    margin: 0;
    color: #0d2c53;
    font-weight: 900;
    font-size: 1.35rem;
    line-height: 1.05;
}

.crx-svc4__p {
    margin: 0;
    color: #3a3a3a;
    font-size: 1rem;
    line-height: 1.75;
    max-width: 360px;
}

.crx-svc4__cta {
    display: flex;
    justify-content: center;
    margin-top: .35rem;
}

.crx-svc4__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 1.35rem;
    background: #c30f2d;
    color: #ffffff;
    text-decoration: none;
    font-weight: 800;
    font-size: 0.72rem;
    border-radius: 0.25rem;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow: 0 2px 0 rgba(0,0,0,0.12);
    white-space: nowrap;
}

    .crx-svc4__btn:hover {
        background: #a80d27;
        color: #ffffff;
        text-decoration: none;
    }

@media (max-width: 991.98px) {
    .crx-svc4__wrap {
        grid-template-columns: 1fr;
    }

    .crx-svc4__head {
        grid-template-columns: 72px 1fr;
    }

    .crx-svc4__num {
        font-size: 4.1rem;
    }

    .crx-svc4__p {
        max-width: none;
    }

    .crx-svc4__cta {
        margin-top: 1.1rem;
    }
}

.crx-svc5 {
    background: #ffffff;
}

    .crx-svc5 .container {
        max-width: 1060px;
    }

.crx-svc5__wrap {
    display: grid;
    grid-template-columns: 34% 66%;
    gap: 2rem;
    align-items: start;
}

.crx-svc5__head {
    display: grid;
    grid-template-columns: 86px 1fr;
    gap: 0.85rem;
    align-items: start;
    margin-bottom: 0.75rem;
}

.crx-svc5__num {
    color: #0d2c53;
    font-weight: 900;
    font-size: 5.1rem;
    line-height: 0.9;
    letter-spacing: -1px;
    text-align: right;
    padding-top: 0.05rem;
}

.crx-svc5__title {
    margin: 0;
    color: #0d2c53;
    font-weight: 900;
    font-size: 1.35rem;
    line-height: 1.05;
}

.crx-svc5__p {
    margin: 0 0 0.85rem;
    color: #3a3a3a;
    font-size: 1rem;
    line-height: 1.75;
    max-width: 360px;
}


.crx-svc5__sub {
    margin: 0.35rem 0 0.45rem;
    color: #1b1b1b;
    font-weight: 900;
    font-size: 1.5rem;
}

.crx-svc5__media {
    display: grid;
    gap: 0.95rem;
}

.crx-svc5__imgBox {
    margin: 0;
    width: 100%;
}

.crx-svc5__img {
    display: block;
    width: 100%;
    height: auto;
}

.crx-svc5__imgBox--small .crx-svc5__img {
    /* keep natural aspect; this just matches the visual spacing */
}


@media (max-width: 991.98px) {
    .crx-svc5__wrap {
        grid-template-columns: 1fr;
    }

    .crx-svc5__p {
        max-width: none;
    }

    .crx-svc5__head {
        grid-template-columns: 72px 1fr;
    }

    .crx-svc5__num {
        font-size: 4.1rem;
    }

    .crx-svc5__media {
        margin-top: 1.25rem;
    }
}

.crx-svc6 {
    background: #ffffff;
    padding: 2.15rem 0 2.75rem;
}

    .crx-svc6 .container {
        max-width: 1020px;
    }

.crx-svc6__wrap {
    display: grid;
    grid-template-columns: 62% 38%;
    gap: 2rem;
    align-items: start;
}

.crx-svc6__imgBox {
    margin: 0;
    width: 100%;
}

.crx-svc6__img {
    display: block;
    width: 100%;
    height: auto;
}

.crx-svc6__head {
    display: grid;
    grid-template-columns: 86px 1fr;
    gap: 0.85rem;
    align-items: start;
    margin-bottom: 0.65rem;
}

.crx-svc6__num {
    color: #0d2c53;
    font-weight: 900;
    font-size: 5.1rem;
    line-height: 0.9;
    letter-spacing: -1px;
    text-align: right;
    padding-top: 0.05rem;
}

.crx-svc6__title {
    margin: 0;
    color: #0d2c53;
    font-weight: 900;
    font-size: 1.35rem;
    line-height: 1.05;
}

.crx-svc6__p {
    margin: 0;
    color: #3a3a3a;
    font-size: 1rem;
    line-height: 1.75;
    max-width: 360px;
}

.crx-svc6__cta {
    display: flex;
    justify-content: center;
    margin-top: .35rem;
}

.crx-svc6__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 1.35rem;
    background: #c30f2d;
    color: #ffffff;
    text-decoration: none;
    font-weight: 800;
    font-size: 0.72rem;
    border-radius: 0.25rem;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow: 0 2px 0 rgba(0,0,0,0.12);
    white-space: nowrap;
}

    .crx-svc6__btn:hover {
        background: #a80d27;
        color: #ffffff;
        text-decoration: none;
    }

@media (max-width: 991.98px) {
    .crx-svc6__wrap {
        grid-template-columns: 1fr;
    }

    .crx-svc6__head {
        grid-template-columns: 72px 1fr;
    }

    .crx-svc6__num {
        font-size: 4.1rem;
    }

    .crx-svc6__p {
        max-width: none;
    }

    .crx-svc6__cta {
        margin-top: 1.1rem;
    }
}

.crx-fleet {
    background: #ffffff;
    /*    padding: 2.15rem 0 2.75rem;*/
}


    .crx-fleet .container {
        max-width: 1020px;
    }


.crx-fleet__wrap {
    display: grid;
    grid-template-columns: 33% 67%;
    gap: 2rem;
    align-items: start;
}


.crx-fleet__title {
    margin: 0 0 0.75rem;
    color: #0d2c53;
    font-weight: 900;
    font-size:2rem;
    line-height: 1.2;
}

.crx-fleet__list {
    margin: 0;
    padding: 0;
    list-style: none;
    color: #3a3a3a;
    font-size: 1rem;
    line-height: 1.75;
}

    .crx-fleet__list li {
        margin: 0 0 0.8rem;
    }

.crx-fleet__imgBox {
    margin: 0;
    width: 100%;
}

.crx-fleet__img {
    display: block;
    width: 100%;
    height: auto;
}

@media (max-width: 991.98px) {
    .crx-fleet__wrap {
        grid-template-columns: 1fr;
    }

    .crx-fleet__media {
        margin-top: 1.25rem;
    }
}

.crx-finalCta {
    background: #ffffff;
    padding: 2.1rem 0 2.4rem;
}

    .crx-finalCta .container {
        max-width: 1020px;
        text-align: center;
    }

.crx-finalCta__text {
    margin: 0 auto 1.25rem;
    max-width: 760px;
    text-align: center;
    color: #3a3a3a;
    font-size: 1rem;
    line-height: 1.75;
}

.crx-finalCta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 1.35rem;
    background: #c30f2d;
    color: #ffffff;
    text-decoration: none;
    font-weight: 800;
    font-size: 0.72rem;
    border-radius: 0.25rem;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow: 0 2px 0 rgba(0,0,0,0.12);
    white-space: nowrap;
}

    .crx-finalCta__btn:hover {
        background: #a80d27;
        color: #ffffff;
        text-decoration: none;
    }

.crx-festival-intro {
    background: #ffffff;
}

.crx-festival-intro__container {
    padding-top: 34px;
    padding-bottom: 42px;
}

.crx-festival-intro__leftTitle {
    margin: 0 0 14px;
    color: #0d2c53;
    font-weight: 800;
    letter-spacing: -0.2px;
    line-height: 1.05;
    font-size: clamp(1.9rem, 3.1vw, 2.55rem);
}

.crx-festival-intro__leftCopy {
    color: #6c757d;
    font-size: 0.93rem;
    line-height: 1.65;
}

    .crx-festival-intro__leftCopy p {
        margin: 0 0 14px;
    }

.crx-festival-intro__card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 3px;
    padding: 18px 18px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.crx-festival-intro__cardTitle {
    margin: 0 0 6px;
    color: #0d2c53;
    font-weight: 700;
    line-height: 1.12;
    font-size: 1.55rem;
}

.crx-festival-intro__cardDesc {
    margin: 0;
    color: #6c757d;
    font-size: 0.88rem;
    line-height: 1.5;
    max-width: 58ch;
}

.crx-festival-intro__cardAction {
    flex: 0 0 auto;
    padding-top: 6px;
}

.crx-festival-intro__cardBtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    border-radius: 3px;
    background: #6aa84f;
    color: #ffffff;
    text-decoration: none;
    font-weight: 700;
    font-size: 0.82rem;
    line-height: 1;
    border: 1px solid rgba(0,0,0,0.05);
    white-space: nowrap;
}

    .crx-festival-intro__cardBtn:hover,
    .crx-festival-intro__cardBtn:focus-visible {
        color: #ffffff;
        filter: brightness(0.95);
        text-decoration: none;
    }

.crx-festival-intro__media {
    margin: 22px 0 0;
}

.crx-festival-intro__img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 2px;
    object-fit: cover;
}

@media (max-width: 991.98px) {
    .crx-festival-intro__card {
        flex-direction: column;
        align-items: flex-start;
    }

    .crx-festival-intro__cardAction {
        padding-top: 0;
    }
}

.crx-festival-solutions {
    background: #ffffff;
}

.crx-festival-solutions__container {
    padding-top: 38px;
    padding-bottom: 15px;
}

.crx-festival-solutions__title {
    margin: 0 0 22px;
    text-align: center;
    color: #0d2c53;
    font-weight: 800;
    letter-spacing: -0.2px;
    line-height: 1.12;
    font-size: clamp(1.9rem, 3.1vw, 2.6rem);
}

.crx-festival-solutions__figure {
    margin: 0;
    display: flex;
    justify-content: center;
}

.crx-festival-solutions__img {
    width: 100%;
    max-width: 1020px;
    height: auto;
    display: block;
}

.crx-festival-solutions__callout {
    margin-top: 30px;
    display: flex;
    justify-content: center;
}

.crx-festival-solutions__calloutInner {
    width: 100%;
    max-width: 820px;
    background: #b30d24;
    color: #ffffff;
    display: grid;
    grid-template-columns: 72px 1fr;
    gap: 18px;
    align-items: center;
    padding: 18px 22px;
}

.crx-festival-solutions__icon {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
}

    .crx-festival-solutions__icon svg {
        width: 56px;
        height: 56px;
        fill: #ffffff;
        opacity: 0.95;
        display: block;
    }

.crx-festival-solutions__calloutText {
    margin: 0;
    font-size: 0.88rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.95);
}

@media (max-width: 576px) {
    .crx-festival-solutions__calloutInner {
        grid-template-columns: 1fr;
        text-align: left;
    }

    .crx-festival-solutions__icon {
        margin-bottom: 8px;
    }
}

.festival-services {
    padding: 0px 0;
}

.festival-services__container {
    max-width: 1120px;
}

.festival-services__title {
    font-weight: 700;
    color: #0b2b5a;
    letter-spacing: .2px;
    margin: 0 0 28px;
}

.festival-services__panel {
    background: transparent;
}

.festival-services__lead {
    margin: 0 0 14px;
    color: #2a3b55;
    font-weight: 600;
    font-size: 0.95rem;
}

.festival-services__bullets {
    margin: 0 0 18px;
}

.festival-services__bullet {
    margin: 0 0 12px;
}

.festival-services__h3 {
    margin: 0 0 6px;
    font-size: 0.9rem;
    font-weight: 700;
    color: #1c2f4a;
}

.festival-services__p {
    margin: 0 0 12px;
    font-size: 0.82rem;
    line-height: 1.55;
    color: #4c5e78;
}

.festival-services__imgWrap {
    border-radius: 2px;
    overflow: hidden;
    background: #dfe7f5;
    box-shadow: 0 2px 10px rgba(0,0,0,.06);
    margin: 18px 0 18px;
}

.festival-services__imgWrap--top {
    margin-top: 0;
}

.festival-services__img {
    display: block;
    width: 100%;
    height: auto;
}

.festival-services__textBlock {
    margin-top: 8px;
}

.festival-services__cta {
    display: inline-block;
    margin-top: 6px;
    padding: 10px 18px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 0.85rem;
    text-decoration: none;
    background: #4f7f39;
    color: #ffffff;
}

    .festival-services__cta:hover {
        background: #436e31;
        color: #ffffff;
    }

@media (max-width: 991.98px) {
    .festival-services {
        padding: 44px 0;
    }

    .festival-services__title {
        margin-bottom: 22px;
    }
}


.crx-firstnet {
    background: #ffffff;
    padding: 0px 0 44px;
}

.crx-firstnet__topRule {
    height: 2px;
    background: #d61f26;
    margin: 0 0 18px;
}

.crx-firstnet__head {
    align-items: flex-start;
}

.crx-firstnet__logoImg {
    display: block;
    width: 100%;
    max-width: 420px;
    height: auto;
    margin: 0 0 14px;
}

.crx-firstnet__title {
    font-size: 18px;
    font-weight: 800;
    color: #1a3c7a;
    margin: 0 0 8px;
}

.crx-firstnet__h4 {
    /*/*font-size: 12px;*/*/
    font-weight: 800;
    color: #2b2b2b;
    margin: 0 0 6px;
}

.crx-firstnet__p {
    /*/*font-size: 12px;*/*/
    line-height: 1.6;
    color: #666;
    margin: 0 0 12px;
}

.crx-firstnet__p--bold {
    font-weight: 700;
    color: #2b2b2b;
}

.crx-firstnet__right .crx-firstnet__p {
    margin-bottom: 14px;
}

.crx-firstnet__video {
    margin-top: 28px;
    display: block;
}

.crx-firstnet__videoFrame {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: 4px;
    box-shadow: 0 2px 10px rgba(0,0,0,.12);
    background: #000;
}

.crx-firstnet__videoIframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}


.crx-firstnet__videoImg {
    display: block;
    width: 100%;
    height: auto;
}

.crx-firstnet__play {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.crx-firstnet__playIcon {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: rgba(0,0,0,.55);
    position: relative;
}

    .crx-firstnet__playIcon::before {
        content: "";
        position: absolute;
        left: 22px;
        top: 18px;
        width: 0;
        height: 0;
        border-left: 16px solid #fff;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
    }

.crx-firstnet__play:hover .crx-firstnet__playIcon {
    background: rgba(0,0,0,.68);
}

@media (max-width: 991.98px) {
    .crx-firstnet {
        padding: 18px 0 36px;
    }

    .crx-firstnet__videoFrame {
        max-width: 100%;
    }
}


.crx-omu {
    padding: 0px 0 0px;
    background: #ffffff;
}

.crx-omu__box {
    background: #efefef;
    padding: 34px 36px;
}

.crx-omu__title {
    margin: 0 0 10px;
    font-size: 18px;
    font-weight: 800;
    color: #123c73;
}

.crx-omu__p {
    margin: 0 0 16px;
    /*/*font-size: 12px;*/*/
    line-height: 1.75;
    color: #555;
    max-width: 620px;
}

.crx-omu__btn {
    display: inline-block;
    background: #b10f1f;
    color: #fff;
    padding: 8px 22px;
    border-radius: 999px;
    font-weight: 700;
    /*/*font-size: 12px;*/*/
    text-decoration: none;
}

    .crx-omu__btn:hover {
        background: #960d1a;
        color: #fff;
    }

.crx-omu__imgWrap {
    background: transparent;
}

.crx-omu__img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 2px;
}


.crx-fest-cta {
    padding: 0px 0 0px;
    background: #ffffff;
    text-align: center;
}

.crx-fest-cta__title {
    margin: 0 0 10px;
    font-size: 28px;
    font-weight: 300;
    color: #123c73;
}

.crx-fest-cta__p {
    margin: 0 0 6px;
    /*/*font-size: 12px;*/*/
    color: #666;
    line-height: 1.6;
}

.crx-fest-cta__card {
    margin: 26px auto 0;
    max-width: 720px;
    background: #ffffff;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    padding: 26px 26px;
    text-align: left;
}

.crx-fest-cta__cardTitle {
    margin: 0 0 10px;
    font-size: 34px;
    font-weight: 300;
    color: #123c73;
    line-height: 1.05;
}

.crx-fest-cta__cardText {
    margin: 0;
    /*font-size: 12px;*/
    color: #666;
    line-height: 1.6;
    max-width: 420px;
}

.crx-fest-cta__btn {
    display: inline-block;
    background: #78a842;
    color: #fff;
    padding: 10px 20px;
    border-radius: 4px;
    font-weight: 700;
    /*font-size: 12px;*/
    text-decoration: none;
    border: 1px solid rgba(0,0,0,.08);
}

    .crx-fest-cta__btn:hover {
        background: #6a973b;
        color: #fff;
    }

@media (max-width: 991.98px) {
    .crx-omu__box {
        padding: 26px 18px;
    }

    .crx-fest-cta__title {
        font-size: 24px;
    }

    .crx-fest-cta__cardTitle {
        font-size: 28px;
    }

    .crx-fest-cta__card {
        text-align: left;
        padding: 20px 18px;
    }
}

.crx-consult {
    background: #fff;
    padding: 0px 0 0px;
}

.crx-consult__wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 24px;
}

.crx-consult__cols {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 44px;
    align-items: start;
}

.crx-consult__title {
    margin: 0 0 22px;
    font-size: 34px;
    line-height: 1.08;
    font-weight: 800;
    color: #0b2f4d;
}

.crx-consult__copy::after {
    content: "";
    display: table;
    clear: both;
}

.crx-consult__logoFloat {
    float: left;
    width: 230px;
    height: auto;
    margin: 6px 24px 14px 0;
    display: block;
}

.crx-consult__copy p {
    margin: 0 0 16px;
    font-size: 13px;
    line-height: 1.75;
    color: #1d1d1d;
}

.crx-consult__linkStrong {
    font-weight: 800;
    color: #0b4a84;
    text-decoration: underline;
}

.crx-consult__colRight {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.crx-consult__ctaBox {
    background: #e7e7e7;
    border-radius: 3px;
    padding: 22px 26px;
}

.crx-consult__ctaTitle {
    margin: 0 0 10px;
    font-size: 38px;
    line-height: 1.02;
    font-weight: 300;
    color: #6b6b6b;
}

.crx-consult__ctaBody {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    justify-content: space-between;
}

.crx-consult__ctaText {
    margin: 0;
    font-size: 16px;
    line-height: 1.55;
    color: #0b2f4d;
}

.crx-consult__ctaBtn {
    background: #c91f3a;
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    /*font-size: 12px;*/
    letter-spacing: 0.6px;
    padding: 14px 22px;
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.08);
    white-space: nowrap;
    align-self: center;
}

    .crx-consult__ctaBtn:hover {
        filter: brightness(0.95);
    }

.crx-consult__photo {
    width: 100%;
    max-width: 520px;
    height: auto;
    display: block;
    border-radius: 4px;
}

@media (max-width: 992px) {
    .crx-consult__cols {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .crx-consult__ctaBody {
        flex-direction: column;
        align-items: flex-start;
    }

    .crx-consult__ctaBtn {
        align-self: flex-start;
        margin-top: 8px;
    }
}

@media (max-width: 640px) {
    .crx-consult__title {
        font-size: 28px;
    }

    .crx-consult__ctaTitle {
        font-size: 32px;
    }

    .crx-consult__logoFloat {
        float: none;
        width: 260px;
        margin: 0 0 14px 0;
        justify-self: center;
    }
}

.crx-clorox {
    background: #fff;
    padding: 0px 0;
}

.crx-clorox__wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 24px;
}

.crx-clorox__box {
    background: #ffffff;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
    padding: 26px 28px 22px;
}

.crx-clorox__text {
    margin: 0 0 16px;
    color: #0b2f4d;
    font-size: 24px;
    line-height: 1.25;
    font-weight: 400;
}

    .crx-clorox__text strong {
        font-weight: 800;
    }

.crx-clorox__btn {
    display: inline-block;
    background: #c91f3a;
    color: #fff;
    text-decoration: none;
    /*font-size: 12px;*/
    font-weight: 700;
    padding: 12px 18px;
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.08);
}

    .crx-clorox__btn:hover {
        filter: brightness(0.95);
    }

@media (max-width: 640px) {
    .crx-clorox__text {
        font-size: 18px;
    }
}

.crx-screen {
    background: #fff;
    padding: 0px 0 0px;
}

.crx-screen__wrap {
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

.crx-screen__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 44px;
    align-items: start;
}

.crx-screen__kicker {
    margin: 0 0 18px;
    font-size: 26px;
    line-height: 1.2;
    font-weight: 400;
}

    .crx-screen__kicker em {
        font-style: italic;
    }

.crx-screen__imgWrap {
    width: 100%;
}

.crx-screen__img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 2px;
}

.crx-screen__title {
    margin: 0 0 14px;
    font-size: 26px;
    line-height: 1.15;
    font-weight: 800;
    color: #0b2f4d;
}

.crx-screen__p {
    margin: 0 0 16px;
    font-size: 13px;
    line-height: 1.75;
    color: #1d1d1d;
    max-width: 520px;
}

.crx-screen__sub {
    margin: 10px 0 8px;
    font-size: 13px;
    font-weight: 800;
    color: #1d1d1d;
}

.crx-screen__link {
    display: inline-block;
    margin-top: 6px;
    font-size: 13px;
    font-weight: 700;
    color: #0b4a84;
    text-decoration: underline;
}

@media (max-width: 992px) {
    .crx-screen__grid {
        grid-template-columns: 1fr;
        gap: 26px;
    }

    .crx-screen__p {
        max-width: none;
    }
}

.crx-typing {
    padding: 60px 24px;
    text-align: center;
}

.crx-typing__title {
    font-size: 36px;
    font-weight: 800;
    color: #0b2f4d;
    margin-bottom: 36px;
}

.crx-typing__caret {
    display: inline-block;
    margin-left: 4px;
    animation: blink 1s infinite;
}

@keyframes blink {
    0%, 50% {
        opacity: 1;
    }

    51%, 100% {
        opacity: 0;
    }
}

.crx-typing__image {
    max-width: 100%;
    height: auto;
}

.crx-ctaCard {
    background: #fff;
    padding: 0px 0;
}

.crx-ctaCard__wrap {
    max-width: 560px;
    margin: 0 auto;
    padding: 0 24px;
}

.crx-ctaCard__card {
    background: #e7e7e7;
    border-radius: 4px;
    padding: 26px 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
}

.crx-ctaCard__title {
    margin: 0 0 10px;
    font-size: 40px;
    line-height: 1.02;
    font-weight: 300;
    color: #6b6b6b;
}

.crx-ctaCard__text {
    margin: 0;
    font-size: 16px;
    line-height: 1.55;
    color: #0b2f4d;
}

.crx-ctaCard__btn {
    background: #c91f3a;
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    /*font-size: 12px;*/
    letter-spacing: 0.6px;
    padding: 16px 26px;
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.12);
    white-space: nowrap;
}

    .crx-ctaCard__btn:hover {
        filter: brightness(0.95);
    }

@media (max-width: 640px) {
    .crx-ctaCard__card {
        flex-direction: column;
        align-items: flex-start;
    }

    .crx-ctaCard__title {
        font-size: 32px;
    }
}


.crx-typedHero {
    background: #fff;
    padding: 0px 0 0px;
}

.crx-typedHero__wrap {
    max-width: 910px;
    margin: 0 auto;
    padding: 0 24px;
    text-align: center;
}

.crx-typedHero__title {
    margin: 0 0 18px;
    font-weight: 800;
    color: #0b2f4d;
}

.crx-typing__caret {
    display: inline-block;
    margin-left: 4px;
    animation: crx-blink 1s infinite;
}

@keyframes crx-blink {
    0%, 50% {
        opacity: 1;
    }

    51%, 100% {
        opacity: 0;
    }
}

.crx-typedHero__img {
    display: block;
    width: 100%;
    max-width: 520px;
    margin: 0 auto;
    height: auto;
    border-radius: 2px;
}

.crx-clients {
    background: #fff;
    padding: 0px 0 0px;
}

.crx-clients__wrap {
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
    text-align: center;
}

.crx-clients__title {
    margin: 0;
    font-size: 34px;
    line-height: 1.1;
    font-weight: 800;
    color: #0b2f4d;
}

.crx-clients__subtitle {
    margin: 10px 0 26px;
    font-size: 13px;
    color: #1d1d1d;
}

.crx-clients__row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 70px;
    flex-wrap: wrap;
}

.crx-clients__logo {
    height: 70px;
    width: auto;
    max-width: 220px;
    object-fit: contain;
    display: block;
}

@media (max-width: 992px) {
    .crx-clients__row {
        gap: 40px;
    }

    .crx-clients__logo {
        height: 62px;
        max-width: 200px;
    }
}

@media (max-width: 640px) {
    .crx-clients__title {
        font-size: 28px;
    }

    .crx-clients__row {
        gap: 26px;
    }

    .crx-clients__logo {
        height: 54px;
        max-width: 180px;
    }
}

.crx-finalCta {
    background: #fff;
    padding: 0px 0 64px;
}

.crx-finalCta__wrap {
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
    text-align: center;
}

.crx-finalCta__headline {
    margin: 0 0 10px;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 400;
    color: #1d1d1d;
}

.crx-finalCta__subhead {
    margin: 0 0 18px;
    font-size: 13px;
    line-height: 1.55;
    color: #1d1d1d;
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
}

.crx-finalCta__card {
    background: #e7e7e7;
    border-radius: 4px;
    padding: 24px 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    text-align: left;
}

.crx-finalCta__left {
    min-width: 0;
}

.crx-finalCta__cardTitle {
    margin: 0 0 8px;
    font-size: 42px;
    line-height: 1.02;
    font-weight: 300;
    color: #6b6b6b;
}

.crx-finalCta__cardText {
    margin: 0;
    font-size: 16px;
    line-height: 1.55;
    color: #0b2f4d;
    max-width: 640px;
}

.crx-finalCta__btn {
    background: #c91f3a;
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    /*font-size: 12px;*/
    letter-spacing: 0.6px;
    padding: 16px 26px;
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.12);
    white-space: nowrap;
}

    .crx-finalCta__btn:hover {
        filter: brightness(0.95);
    }

@media (max-width: 768px) {
    .crx-finalCta__card {
        flex-direction: column;
        align-items: flex-start;
    }

    .crx-finalCta__cardTitle {
        font-size: 34px;
    }

    .crx-finalCta__btn {
        margin-top: 10px;
    }
}

.crx-disinfect {
    padding: 0px 0 0px;
}

.crx-disinfect__wrap {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 16px;
}

.crx-disinfect__grid {
    display: grid;
    grid-template-columns: 380px 1fr;
    gap: 56px;
    align-items: start;
}

.crx-disinfect__card {
    border: 1px solid #e2e2e2;
    border-radius: 4px;
    background: #fff;
    padding: 28px 26px 26px;
}

.crx-disinfect__cardTitle {
    margin: 0 0 18px;
    font-size: 44px;
    line-height: 1.05;
    font-weight: 300;
    color: #0b2f4a;
    letter-spacing: 0.2px;
}

.crx-disinfect__cardText {
    margin: 0 0 22px;
    font-size: 16px;
    line-height: 1.75;
    color: #1f1f1f;
    max-width: 310px;
}

.crx-disinfect__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 52px;
    padding: 0 22px;
    border-radius: 4px;
    background: #c8102e;
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    letter-spacing: 0.6px;
    /*font-size: 14px;*/;
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 2px 0 rgba(0, 0, 0, 0.12);
    white-space: nowrap;
}

    .crx-disinfect__btn:hover,
    .crx-disinfect__btn:focus {
        color: #fff;
        text-decoration: none;
        filter: brightness(0.95);
    }

.crx-disinfect__content {
    padding-top: 6px;
}

.crx-disinfect__title {
    margin: 0 0 14px;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 800;
    color: #0b2f4a;
}

.crx-disinfect__titleLight {
    font-weight: 300;
}

.crx-disinfect__p {
    margin: 0 0 16px;
    font-size: 15px;
    line-height: 1.85;
    color: #333;
}

.crx-disinfect__notes {
    margin-top: 18px;
    /*font-size: 12px;*/
    line-height: 1.6;
    color: #0b2f4a;
}

.crx-disinfect__divider {
    height: 1px;
    background: #e9e9e9;
    margin-top: 44px;
}

@media (max-width: 992px) {
    .crx-disinfect__grid {
        grid-template-columns: 1fr;
        gap: 26px;
    }

    .crx-disinfect__cardTitle {
        font-size: 38px;
    }

    .crx-disinfect__content {
        padding-top: 0;
    }
}

.crx-bluebar {
    background: #0b87b6;
    padding: 54px 0;
}

.crx-bluebar__wrap {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 16px;
}

.crx-bluebar__grid {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    gap: 56px;
    align-items: center;
}

.crx-bluebar__left {
    text-align: center;
}

.crx-bluebar__logo {
    display: block;
    width: 250px;
    max-width: 100%;
    height: auto;
    margin: 0 auto 26px;
}

.crx-bluebar__headline {
    margin: 0;
    color: #ffffff;
    font-weight: 400;
    font-size: 28px;
    line-height: 1.2;
}

.crx-bluebar__lists {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
}

.crx-bluebar__col {
    min-width: 0;
}

.crx-bluebar__item {
    color: #ffffff;
    /*font-size: 14px;*/;
    font-weight: 600;
    padding: 10px 0 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.35);
    text-transform: none;
    user-select: none;
    cursor: default;
}

@media (max-width: 992px) {
    .crx-bluebar {
        padding: 44px 0;
    }

    .crx-bluebar__grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .crx-bluebar__lists {
        gap: 34px;
    }

    .crx-bluebar__headline {
        font-size: 24px;
    }
}

@media (max-width: 576px) {
    .crx-bluebar__lists {
        grid-template-columns: 1fr;
    }
}

.crx-disinf-cta {
    padding: 34px 0 46px;
}

.crx-disinf-cta__wrap {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 16px;
}

.crx-disinf-cta__headline {
    margin: 0 0 14px;
    color: #0b2b55;
    font-weight: 300;
    line-height: 1.15;
}

.crx-disinf-cta__sub {
    margin: 0 0 26px;
    color: #2b2b2b;
    /*font-size: 14px;*/;
    line-height: 1.8;
}

.crx-disinf-cta__card {
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    background: #ffffff;
    padding: 30px 34px 34px;
}

.crx-disinf-cta__cardTitle {
    margin: 0 0 12px;
    color: #0b2b55;
    font-weight: 300;
    line-height: 1.05;
}

.crx-disinf-cta__cardText {
    margin: 0 0 18px;
    color: #2b2b2b;
    /*font-size: 14px;*/;
    line-height: 1.8;
}

.crx-disinf-cta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 46px;
    min-width: 110px;
    padding: 0 18px;
    border-radius: 4px;
    background: #c61e3a;
    color: #ffffff;
    font-weight: 700;
    /*font-size: 12px;*/
    text-decoration: none;
    letter-spacing: 0.5px;
    user-select: none;
}

    .crx-disinf-cta__btn:hover {
        color: #ffffff;
        filter: brightness(0.95);
    }

@media (max-width: 768px) {
    .crx-disinf-cta__headline {
        font-size: 28px;
    }

    .crx-disinf-cta__cardTitle {
        font-size: 34px;
    }
}

.crx-wrap {
    max-width: 1100px;
}

.crx-diff {
    padding: 0px 0 0px;
}

.crx-diff__title {
    font-size: 34px;
    line-height: 1.1;
    font-weight: 500;
    color: #0b3a64;
    margin: 0 0 18px;
}

.crx-diff__list {
    margin: 0 0 24px;
    padding-left: 18px;
}

    .crx-diff__list li {
        margin: 0 0 10px;
        color: #1b1b1b;
        font-size: 15px;
        line-height: 1.7;
    }

.crx-diff__jump {
    display: block;
    font-size: 28px;
    font-weight: 600;
    color: #1a73b8;
    text-decoration: none;
    margin: 22px 0;
}

    .crx-diff__jump:hover,
    .crx-diff__jump:focus {
        text-decoration: none;
        color: #155f96;
    }

.crx-diff__video {
    max-width: 340px;
    margin-left: auto;
}

.crx-diff__ratio {
    border-radius: 4px;
    overflow: hidden;
    --bs-aspect-ratio: calc(7 / 5 * 100%);
}

.crx-caret {
    display: inline-block;
    margin-left: 6px;
    color: #1a73b8;
    font-weight: 300;
    animation: crxCaretBlink 1s steps(2, end) infinite;
    transform: translateY(-1px);
}

.crx-caret--sm {
    margin-left: 10px;
}

@keyframes crxCaretBlink {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@media (max-width: 991.98px) {
    .crx-diff__video {
        max-width: 520px;
        margin: 12px auto 0;
    }

    .crx-diff__jump {
        font-size: 24px;
    }

    .crx-diff__title {
        font-size: 30px;
    }
}

.crx-wrap {
    max-width: 1100px;
}

.crx-stats {
    padding: 70px 0 80px;
    background: #f2f2f2;
}

.crx-stats__row {
    align-items: center;
}

.crx-stats__num {
    font-size: 64px;
    line-height: 1;
    font-weight: 600;
    color: #1f1f1f;
    letter-spacing: 0.5px;
}

.crx-stats__label {
    margin-top: 10px;
    /*font-size: 12px;*/
    font-weight: 700;
    letter-spacing: 0.8px;
    color: #1a73b8;
    text-transform: uppercase;
}

@media (max-width: 991.98px) {
    .crx-stats {
        padding: 50px 0 60px;
    }

    .crx-stats__num {
        font-size: 52px;
    }
}

.crx-hq {
    background: #ffffff;
    padding: 56px 0 64px;
}

.crx-hq__wrap {
    /*max-width: 1050px;*/
}

.crx-hq__title {
    font-size: 34px;
    line-height: 1.05;
    font-weight: 500;
    color: #0a2a4a;
    margin: 0 0 18px;
}

.crx-hq__body {
    /*font-size: 12px;*/
    line-height: 1.7;
    color: #1f2a35;
}

    .crx-hq__body p {
        margin: 0 0 14px;
    }

.crx-hq__cta {
    margin-top: 26px;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
}

.crx-hq__ctaBody {
    padding: 22px 22px;
    display: flex;
    align-items: center;
    gap: 18px;
    background: rgba(240, 240, 240, 1);
}

.crx-hq__ctaText {
    flex: 1;
    min-width: 0;
}

.crx-hq__ctaTitle {
    font-size: 29px;
    line-height: 1.05;
    font-weight: 300;
    color: #0a2a4a;
    margin-bottom: 10px;
}

.crx-hq__ctaDesc {
    /*font-size: 12px;*/
    line-height: 1.6;
    color: #0a2a4a;
    max-width: 340px;
}

.crx-hq__ctaBtn {
    background: #6fa12d;
    color: #fff;
    padding: 10px 18px;
    border-radius: 4px;
    /*font-size: 12px;*/
    border: 0;
    white-space: nowrap;
}

    .crx-hq__ctaBtn:hover {
        filter: brightness(0.95);
        color: #fff;
    }

.crx-hq__video {
    width: 100%;
}

.crx-hq__ratio {
    border-radius: 2px;
    overflow: hidden;
    /*    background: #000;*/
    --bs-aspect-ratio: calc(6 / 4 * 100%);
}

@media (max-width: 991.98px) {
    .crx-hq {
        padding: 40px 0 48px;
    }

    .crx-hq__wrap {
        max-width: 720px;
    }

    .crx-hq__title,
    .crx-hq__ctaTitle {
        font-size: 28px;
    }

    .crx-hq__ctaBody {
        flex-direction: column;
        align-items: flex-start;
    }

    .crx-hq__ctaDesc {
        max-width: 100%;
    }
}


.crx-solutions {
    background: #f3f3f3;
    padding: 64px 0;
}

.crx-solutions__wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}

.crx-solutions__row {
    display: grid;
    grid-template-columns: 5fr 2fr;
    align-items: start;
    column-gap: 88px;
}

.crx-solutions__row__reverse {
    display: grid;
    grid-template-columns: 2fr 5fr;
    align-items: start;
    column-gap: 88px;
}

.crx-solutions__row--top {
}

.crx-solutions__h {
    margin: 0 0 12px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #111;
}

.crx-solutions__p {
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.8;
    color: #2b2b2b;
}

.crx-solutions__link {
    display: inline-block;
    margin-top: 6px;
    font-size: 13px;
    font-weight: 700;
    color: #0b2d53;
    text-decoration: underline;
    text-underline-offset: 2px;
}

    .crx-solutions__link:hover {
        color: #0b2d53;
        filter: brightness(.9);
    }

.crx-solutions__media {
    display: flex;
}

.crx-solutions__media--right {
    justify-content: flex-end;
}

.crx-solutions__media--left {
    justify-content: flex-start;
}

.crx-solutions__img {
    width: 290px;
    max-width: 100%;
    height: auto;
    display: block;
}

.crx-solutions__text--right {
    padding-top: 10px;
}

@media (max-width: 991.98px) {
    .crx-solutions {
        padding: 44px 0;
    }

    .crx-solutions__row {
        grid-template-columns: 1fr;
        row-gap: 18px;
        column-gap: 0;
    }

    .crx-solutions__row__reverse {
        grid-template-columns: 1fr;
        row-gap: 18px;
        column-gap: 0;
    }

    .crx-solutions__row--top {
        margin-bottom: 34px;
    }

    .crx-solutions__media--right,
    .crx-solutions__media--left {
        justify-content: flex-start;
    }

    .crx-solutions__img {
        width: min(420px, 100%);
    }

    .crx-solutions__row--top .crx-solutions__text {
        order: 1;
    }

    .crx-solutions__row--top .crx-solutions__media {
        order: 2;
    }

    .crx-solutions__row--bottom .crx-solutions__media {
        order: 1;
    }

    .crx-solutions__row--bottom .crx-solutions__text {
        order: 2;
    }
}

.crx-venues {
    padding: 0px 0 0px;
}

.crx-venues__wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}

.crx-venues__title {
    margin: 0 0 14px;
    font-weight: 300;
    letter-spacing: -0.01em;
    color: #0b2d53;
    font-size: clamp(28px, 3.2vw, 44px);
    line-height: 1.05;
}

.crx-venues__imgWrap {
    width: 100%;
    overflow: hidden;
    background: #eee;
    margin: 0 0 16px;
}

.crx-venues__img {
    width: 100%;
    height: auto;
    display: block;
}

.crx-venues__sub {
    margin: 0 0 10px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.02em;
    color: #111;
    text-transform: none;
}

.crx-venues__p {
    margin: 0 0 14px;
    /*font-size: 14px;*/;
    line-height: 1.7;
    color: #2b2b2b;
}

@media (min-width: 992px) {
    .crx-venues__title {
        margin-bottom: 18px;
    }

    .crx-venues__imgWrap {
        margin-bottom: 18px;
    }
}

@media (max-width: 575.98px) {
    .crx-venues {
        padding: 34px 0 40px;
    }

    .crx-venues__wrap {
        padding: 0 16px;
    }
}

.crx-expertise {
    padding: 10px 0;
}

.crx-expertise__wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}

.crx-expertise__title {
    margin: 0 0 16px;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: #0b2d53;
    font-size: clamp(28px, 3.2vw, 44px);
    line-height: 1.05;
}

.crx-expertise__p {
    margin: 0 0 16px;
    font-size: 15px;
    line-height: 1.7;
    color: #2b2b2b;
}

.crx-expertise__card {
    background: #ffffff;
    border: 1px solid #e7e7e7;
    border-radius: 4px;
    padding: 18px 20px;
    box-shadow: 0 1px 0 rgba(0,0,0,.03);
    margin-bottom: 18px;
}

.crx-expertise__cardTitle {
    margin: 0 0 10px;
    font-size: 36px;
    line-height: 1.05;
    font-weight: 300;
    color: #0b2d53;
}

.crx-expertise__cardRow {
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: space-between;
}

.crx-expertise__cardText {
    margin: 0;
    /*font-size: 14px;*/;
    line-height: 1.6;
    color: #2b2b2b;
    max-width: 360px;
}

.crx-expertise__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 18px;
    border-radius: 4px;
    background: #6aa84f;
    color: #fff;
    text-decoration: none;
    /*font-size: 14px;*/;
    font-weight: 700;
    white-space: nowrap;
}

    .crx-expertise__btn:hover {
        color: #fff;
        filter: brightness(.95);
    }

.crx-expertise__lead {
    margin: 0 0 14px;
    /*font-size: 14px;*/;
    line-height: 1.6;
    color: #2b2b2b;
}

    .crx-expertise__lead strong {
        font-weight: 800;
    }

.crx-expertise__imgWrap {
    width: 100%;
    border-radius: 2px;
    overflow: hidden;
}

.crx-expertise__img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

@media (max-width: 991.98px) {
    .crx-expertise {
        padding: 34px 0;
    }

    .crx-expertise__cardRow {
        flex-direction: column;
        align-items: flex-start;
    }

    .crx-expertise__cardText {
        max-width: none;
    }

    .crx-expertise__btn {
        align-self: flex-start;
    }
}

.crx-cta {
    padding: 40px 0;
    background: #fff;
}

.crx-cta__wrap {
    max-width: 720px;
    margin: 0 auto;
    padding: 0 24px;
    text-align: center;
}

.crx-cta__card {
    border: 1px solid #e7e7e7;
    border-radius: 4px;
    background: #fff;
    padding: 28px 30px;
    display: grid;
    grid-template-columns: 430px 160px 1fr;
    align-items: center;
    column-gap: 26px;
}

.crx-cta__title {
    margin: 0 0 10px;
    font-size: 52px;
    line-height: 1.02;
    font-weight: 300;
    letter-spacing: -0.01em;
    color: #0b2d53;
}

.crx-cta__text {
    margin: 0;
    font-size: 15px;
    line-height: 1.7;
    color: #2b2b2b;
}

    .crx-cta__text strong {
        font-weight: 800;
        color: #111;
    }

.crx-cta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 44px;
    border-radius: 4px;
    background: #6aa84f;
    color: #fff;
    /*font-size: 14px;*/;
    font-weight: 700;
    text-decoration: none;
    margin-top: 14px;
}

    .crx-cta__btn:hover {
        color: #fff;
        filter: brightness(.95);
    }

    .crx-cta__btn:focus-visible {
        outline: 2px solid #0b2d53;
        outline-offset: 3px;
    }

@media (max-width: 991.98px) {
    .crx-cta__card {
        grid-template-columns: 1fr;
        row-gap: 14px;
    }

    .crx-cta__btn {
        margin-top: 0;
        width: auto;
        padding: 0 18px;
    }
}

@media (max-width: 575.98px) {
    .crx-cta__card {
        padding: 20px;
    }

    .crx-cta__title {
        font-size: 36px;
    }
}


.crx-tc {
    background: #fff;
    color: #0b2341
}

.crx-tc__container {
    position: relative;
    /*    padding: 48px 0 40px*/
}

.crx-tc__title {
    text-align: center;
    font-weight: 800;
    line-height: 1.05;
    margin: 0 0 18px
}

.crx-tc__viewport {
    position: relative;
    overflow: visible;
    touch-action: pan-y;
    -webkit-user-select: none;
    user-select: none
}

.crx-tc__track {
    position: relative;
    width: 100%;
    overflow: hidden;
    min-height: 520px
}

.crx-tc__slide {
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    padding: 0 22px;
    position: absolute;
    left: 0;
    top: 0;
    display: none;
    will-change: transform
}

    .crx-tc__slide.is-active {
        position: absolute;
        display: block
    }

    .crx-tc__slide.is-adjacent {
        display: block
    }

.crx-tc__quote {
    font-style: italic;
    font-size: clamp(16px,1.6vw,22px);
    line-height: 1.85;
    max-width: 1000px;
    margin: 0 auto 18px
}

.crx-tc__byline {
    margin: 0;
    font-size: 20px;
    line-height: 1.35;
    padding-bottom: 10px
}

.crx-tc__name, .crx-tc__org {
    font-weight: 500
}

.crx-tc__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 56px;
    height: 56px;
    border-radius: 999px;
    border: 0;
    background: #b90d2b;
    box-shadow: 0 10px 20px rgba(0,0,0,.14);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    z-index: 20
}

.crx-tc__nav--prev {
    left: 0
}

.crx-tc__nav--next {
    right: 0
}

.crx-tc__navGlyph {
    color: #fff;
    font-size: 30px;
    line-height: 1;
    display: inline-block;
    transform: translateY(-1px);
    user-select: none
}

.crx-tc__nav:hover {
    filter: brightness(1.03)
}

.crx-tc__nav:active {
    transform: translateY(-50%) scale(.98)
}

.crx-tc__nav:focus-visible {
    outline: 3px solid rgba(185,13,43,.35);
    outline-offset: 3px
}

.crx-tc__viewport.is-dragging, .crx-tc__viewport.is-dragging * {
    user-select: none;
    cursor: grabbing
}

@media (max-width:992px) {
    .crx-tc__track {
        min-height: 560px
    }
}

@media (max-width:768px) {
    .crx-tc__slide {
        padding-left: 64px;
        padding-right: 64px
    }

    .crx-tc__track {
        min-height: 640px
    }
}

@media (max-width:576px) {
    .crx-tc__container {
        padding: 42px 0 32px
    }

    .crx-tc__nav {
        width: 54px;
        height: 54px
    }

    .crx-tc__nav--prev {
        left: 0;
        transform: translate(-50%,-50%)
    }

    .crx-tc__nav--next {
        right: 0;
        transform: translate(50%,-50%)
    }

    .crx-tc__slide {
        padding-left: 58px;
        padding-right: 58px
    }

    .crx-tc__track {
        min-height: 720px
    }
}

.crx-galleryControls[data-crx-gallery-controls] {
    --crxCtlSize: 54px;
    --crxCtlBg: #b90d2b;
    --crxCtlFg: #fff;
    --crxCtlShadow: 0 10px 20px rgba(0,0,0,.14);
    --crxCtlOut: 44px;
    --crxCtlMobileSize: 52px;
    --crxCtlMobileGap: 18px;
    position: relative;
    width: 100%;
    pointer-events: none;
}

    .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn {
        width: var(--crxCtlSize);
        height: var(--crxCtlSize);
        border-radius: 999px;
        border: 0;
        background: var(--crxCtlBg);
        color: var(--crxCtlFg);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 34px;
        line-height: 1;
        cursor: pointer;
        box-shadow: var(--crxCtlShadow);
        padding: 0;
        pointer-events: auto;
    }

@media (min-width:577px) {
    .crx-galleryControls[data-crx-gallery-controls] {
        height: 0;
        margin: 0;
    }

        .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn--prev {
            position: absolute;
            left: calc(var(--crxCtlOut) * -1);
            top: calc(-1 * (var(--crxCtlSize) / 2));
        }

        .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn--next {
            position: absolute;
            right: calc(var(--crxCtlOut) * -1);
            top: calc(-1 * (var(--crxCtlSize) / 2));
        }
}

@media (max-width:576px) {
    .crx-galleryControls[data-crx-gallery-controls] {
        display: flex;
        justify-content: center;
        gap: var(--crxCtlMobileGap);
        margin-top: 18px;
        margin-bottom: 6px;
        height: auto;
    }

        .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn {
            width: var(--crxCtlMobileSize);
            height: var(--crxCtlMobileSize);
            font-size: 32px;
        }
}

.crx-galleryControls[data-crx-gallery-controls] {
    --crxCtlSize: 54px;
    --crxCtlBg: #b90d2b;
    --crxCtlFg: #fff;
    --crxCtlShadow: 0 10px 20px rgba(0,0,0,.14);
    --crxCtlOut: 60px;
    --crxCtlMobileSize: 52px;
    --crxCtlMobileGap: 18px;
    position: relative;
    width: 100%;
    pointer-events: none;
}

    .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn {
        width: var(--crxCtlSize);
        height: var(--crxCtlSize);
        border-radius: 999px;
        border: 0;
        background: var(--crxCtlBg);
        color: var(--crxCtlFg);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 34px;
        line-height: 1;
        cursor: pointer;
        box-shadow: var(--crxCtlShadow);
        padding: 0;
        pointer-events: auto;
    }

@media (min-width:577px) {
    .crx-galleryControls[data-crx-gallery-controls] {
        height: 0;
        margin: 0;
    }

        .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn--prev {
            position: absolute;
            left: -75px;
            top: -200px;
        }

        .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn--next {
            position: absolute;
            right: -75px;
            top: -200px;
        }
}

@media (min-width:577px) {
    .crx-galleryControls[data-crx-gallery-controls] {
        height: 0;
        margin: 0;
    }

        .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn--prev__go {
            position: absolute;
            left: -75px;
            top: -450px;
        }

        .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn--next__go {
            position: absolute;
            right: -75px;
            top: -450px;
        }
}

@media (max-width:576px) {
    .crx-galleryControls[data-crx-gallery-controls] {
        display: flex;
        justify-content: center;
        gap: var(--crxCtlMobileGap);
        margin-top: 18px;
        margin-bottom: 6px;
        height: auto;
    }

        .crx-galleryControls[data-crx-gallery-controls] .crx-galleryControls__btn {
            width: var(--crxCtlMobileSize);
            height: var(--crxCtlMobileSize);
            font-size: 32px;
        }
}

.services-range-section {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 60px 20px;
}

.range-title {
    color: var(--crx-navy);
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 40px;
    line-height: 1.3;
}

.service-item {
    position: relative;
    clear: both;
}

.service-number {
    font-size: 180px;
    font-weight: 700;
    color: var(--crx-navy);
    line-height: 0.85;
    float: left;
    margin-right: 25px;
    margin-top: 0;
    margin-bottom: 10px;
}

.service-content {
    display: block;
}

.service-title {
    color: var(--crx-navy);
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1.4;
    margin-top: 0;
}

.service-description {
    color: #333333;
    font-size: 1rem;
    line-height: 1.8;
    margin-bottom: 20px;
    clear: none;
}

    .service-description:last-child {
        margin-bottom: 0;
    }

@media (max-width: 768px) {
    .services-range-section {
        padding: 40px 15px;
    }

    .range-title {
        font-size: 28px;
        margin-bottom: 30px;
    }

    .service-number {
        font-size: 80px;
        margin-right: 15px;
        line-height: 1;
        margin-bottom: 0;
    }

    .service-title {
        font-size: 18px;
        margin-bottom: 15px;
    }

    .service-description {
        font-size: 1rem;
        line-height: 1.6;
        margin-bottom: 15px;
    }
}

@media (max-width: 480px) {
    .range-title {
        font-size: 24px;
    }

    .service-number {
        font-size: 60px;
        margin-right: 12px;
    }

    .service-title {
        font-size: 16px;
    }

    .service-description {
        font-size: 1rem;
    }
}

.medical-carousel-section {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 60px 20px;
    position: relative;
}

.section-header {
    text-align: center;
    /*margin-bottom: 50px;*/
}

.header-separator {
    width: 4px;
    height: 80px;
    background: linear-gradient(to bottom, transparent, var(--crx-navy), transparent);
    margin: 0 auto 20px;
}

.section-title {
    color: var(--crx-navy);
    font-size: 48px;
    font-weight: 700;
    margin-bottom: 15px;
    line-height: 1.2;
}

.section-subtitle {
    color: #333333;
    font-size: 20px;
    font-weight: 400;
    margin: 0;
}

.carousel-container {
    overflow: hidden;
    position: relative;
    width: 100%;
}

.carousel-track {
    display: flex;
    gap: 30px;
    transition: transform 0.5s ease-in-out;
}

.service-card {
    flex: 0 0 calc(33.333% - 20px);
    min-width: calc(33.333% - 20px);
    background: #ffffff;
    padding: 40px 30px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    min-height: 380px;
    /*box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);*/
}

    .service-card .icon-wrapper {
        width: 80px;
        height: 80px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 25px;
    }

        .service-card .icon-wrapper i {
            font-size: 50px;
            color: var(--crx-red);
            line-height: 1;
            display: inline-block;
        }

    .service-card h3 {
        color: var(--crx-navy);
        font-size: 26px;
        font-weight: 700;
        margin-bottom: 20px;
        line-height: 1.3;
        min-height: 70px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .service-card p {
        color: #333333;
        font-size: 16px;
        line-height: 1.6;
        margin-bottom: 30px;
        flex-grow: 1;
    }

.details-btn {
    background-color: var(--crx-red);
    color: #ffffff;
    padding: 12px 30px;
    border-radius: 25px;
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    display: inline-flex;
    align-items: center;
    gap: 0;
    transition: background-color 0.3s ease;
    white-space: nowrap;
}

    .details-btn:hover {
        background-color: #8a0920;
    }

    .details-btn i {
        /*font-size: 12px;*/
        margin-left: 8px;
        line-height: 1;
        display: inline-block;
    }

.carousel-controls {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    pointer-events: none;
    z-index: 10;
}

.carousel-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: none;
    background-color: var(--crx-red);
    color: #ffffff;
    font-size: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    line-height: 1;
    pointer-events: auto;
}

.carousel-arrow.prev-arrow {
    left: 1rem;
}

.carousel-arrow.next-arrow {
    right: 1rem;
}

    .carousel-arrow i {
        line-height: 1;
        display: inline-block;
    }

    .carousel-arrow:hover {
        background-color: var(--crx-navy);
        transform: scale(1.1);
    }

    .carousel-arrow:active {
        transform: scale(0.95);
    }

@media (max-width: 1024px) {
    .section-title {
        font-size: 40px;
    }

    .section-subtitle {
        font-size: 18px;
    }

    .service-card {
        flex: 0 0 calc(50% - 15px);
        min-width: calc(50% - 15px);
    }

    .carousel-track {
        /*gap: 20px;*/
    }
}

.carousel-track {
    cursor: grab;
    user-select: none;
}

    .carousel-track:active {
        cursor: grabbing;
    }

/*

.service-card {
pointer-events: none;
}

.service-card a {
pointer-events: auto;
}*/

@media (max-width: 768px) {
    .section-title {
        font-size: 32px;
    }

    .section-subtitle {
        font-size: 16px;
    }

    .header-separator {
        height: 60px;
    }

    .service-card {
        flex: 0 0 100%;
        min-width: 100%;
    }

    .carousel-track {
        gap: 20px;
    }

    .medical-carousel-section {
        padding: 40px 15px;
    }

    .service-card h3 {
        font-size: 24px;
        min-height: auto;
    }
}
