

/* START: HOMEPAGE HERO / SLIDER ============================================================================================================= */


/* DESKTOP / TABLET HERO SLIDER */

.slider-home {
    display: block;
}


/* MOBILE HERO IMAGE */

.slider-mobi {
    display: none;
}


/* MOBILE - 600 */

@media only screen and (max-width: 600px) {

    .slider-home {
        display: none;
    }


    .slider-mobi {
        display: block;
    }

}


/* END: HOMEPAGE HERO / SLIDER =============================================================================================================== */


/* HOMEPAGE SLIDER / MOBILE IMAGE SWITCH ==================================================================================================== */

.slider-home {
    display: block;
}


.slider-mobi {
    display: none;
}


@media only screen and (max-width: 600px) {

    .slider-home {
        display: none;
    }


    .slider-mobi {
        display: block;
    }

}


/* =====================================================
   SHOP MESSAGE
===================================================== */

.shop-message {
    width: 80%;

    margin-left: auto;
    margin-right: auto;

    padding: 2% 0 1% 0;

    text-align: center;
}


/* =====================================================
   SHOP MESSAGE - 1440
===================================================== */

@media only screen and (max-width: 1440px) {

    .shop-message {
        width: 85%;
    }

}


/* =====================================================
   SHOP MESSAGE - 1100
===================================================== */

@media only screen and (max-width: 1100px) {

    .shop-message {
        width: 90%;
    }

}


/* =====================================================
   SHOP MESSAGE - 900
===================================================== */

@media only screen and (max-width: 900px) {

    .shop-message {
        width: 90%;

        padding: 5% 0 2% 0;
    }

}


/* =====================================================
   END SHOP MESSAGE
===================================================== */


/* SHOP MESSAGE - MOBILE LONG HEADING ======================================================================================================== */

@media only screen and (max-width: 600px) {

    .shop-message .ck-heading-long span {
        white-space: normal;

        text-align: center;
    }

}




/* START: INSURANCE REPAIR =================================================================================================================== */


/* =====================================================
   INSURANCE REPAIR SECTION
===================================================== */

.insurance-repair {
    width: 90%;

    margin-left: auto;
    margin-right: auto;

    padding: 6% 0;

    display: flex;
    align-items: stretch;

    gap: 4%;
}



/* =====================================================
   INSURANCE REPAIR IMAGE
===================================================== */

.insurance-repair-image {
    width: 52%;

    overflow: hidden;
}


.insurance-repair-image img {
    width: 100%;
    height: 100%;

    min-height: 420px;

    display: block;

    object-fit: cover;
}



/* =====================================================
   INSURANCE REPAIR CONTENT
===================================================== */

.insurance-repair-content {
    width: 44%;

    padding: 4%;

    box-sizing: border-box;

    display: flex;
    flex-direction: column;
    justify-content: center;
}


.insurance-repair-content .ck-section-heading {
    margin-bottom: 5%;
}


.insurance-repair-content .ck-section-copy {
    width: 100%;

    margin-left: 0;
    margin-right: 0;

    text-align: left;
}


.insurance-repair-copy {
    margin-top: 4% !important;
    margin-bottom: 7% !important;
}



/* =====================================================
   INSURANCE REPAIR - 1100
===================================================== */

@media only screen and (max-width: 1100px) {

    .insurance-repair-image {
        width: 50%;
    }

    .insurance-repair-content {
        width: 46%;

        padding: 5%;
    }

    .insurance-repair-image img {
        min-height: 380px;
    }

}



/* =====================================================
   INSURANCE REPAIR - 900
===================================================== */

@media only screen and (max-width: 900px) {

    .insurance-repair {
        flex-direction: column;

        gap: 30px;

        padding: 10% 0;
    }

    .insurance-repair-image,
    .insurance-repair-content {
        width: 100%;
    }

    .insurance-repair-image img {
        height: 320px;
        min-height: 0;
    }

    .insurance-repair-content {
        padding: 7%;
    }

}



/* =====================================================
   INSURANCE REPAIR - 600
===================================================== */

@media only screen and (max-width: 600px) {

    .insurance-repair-image img {
        height: 240px;
    }

    .insurance-repair-content {
        padding: 8%;
    }

}


/* =====================================================
   INSURANCE REPAIR SLIDER
===================================================== */

.insurance-slider {
    position: relative;

    min-height: 420px;

    overflow: hidden;

    border: 1px solid rgba(197,31,38,.45);

    box-sizing: border-box;
}


/* SLIDES */

.insurance-slide {
    position: absolute;

    inset: 0;

    opacity: 0;

    transition: opacity .8s ease;

    pointer-events: none;
}


.insurance-slide-active {
    opacity: 1;

    pointer-events: auto;
}


.insurance-slide img {
    width: 100%;
    height: 100%;

    min-height: 420px;

    display: block;

    object-fit: cover;

    object-position: center;
}


/* ARROWS */

.insurance-slider-prev,
.insurance-slider-next {
    position: absolute;

    top: 50%;

    z-index: 5;

    width: 42px;
    height: 42px;

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

    padding: 0;

    transform: translateY(-50%);

    border: 0;

    background-color: rgba(0,0,0,.65);

    font-size: 160%;

    color: var(--ck-white);

    cursor: pointer;
}


.insurance-slider-prev {
    left: 2%;
}


.insurance-slider-next {
    right: 2%;
}


.insurance-slider-prev:hover,
.insurance-slider-next:hover {
    color: var(--ck-red);
}


/* DOTS */

.insurance-slider-dots {
    position: absolute;

    left: 50%;
    bottom: 4%;

    z-index: 5;

    display: flex;

    gap: 8px;

    transform: translateX(-50%);
}


.insurance-dot {
    width: 10px;
    height: 10px;

    padding: 0;

    border: 0;

    border-radius: 50%;

    background-color: rgba(255,255,255,.55);

    cursor: pointer;
}


.insurance-dot-active {
    background-color: var(--ck-red);
}


/* 900 */

@media only screen and (max-width: 900px) {

    .insurance-slider,
    .insurance-slide img {
        min-height: 320px;
    }

}


/* 600 */

@media only screen and (max-width: 600px) {

    .insurance-slider,
    .insurance-slide img {
        min-height: 240px;
    }

}


/* END: INSURANCE REPAIR ===================================================================================================================== */




/* =====================================================
   FROM THIS TO THIS
   Section-specific layout only.
   Appearance comes from global CK classes.
===================================================== */

.transformation-section {
    width: 100%;

    padding: 5% 0;

    background-color: var(--ck-dark);

    border-top: 1px solid rgba(197, 31, 38, .25);
    border-bottom: 1px solid rgba(197, 31, 38, .25);
}


/* -------------------------------- HEADING */

.transformation-heading {
    width: 70%;

    margin-left: auto;
    margin-right: auto;

    padding-bottom: 3%;

    text-align: center;
}


/* Unique spacing only.
   Font/title styling comes from ck-line-title. */

.transformation-heading .ck-line-title {
    margin: 0 0 2% 0;
}



/* -------------------------------- BEFORE + AFTER WRAP */

.transformation-wrap {
    width: 90%;

    margin-left: auto;
    margin-right: auto;

    display: flex;

    align-items: center;
    justify-content: center;

    column-gap: 2%;
}


/* -------------------------------- IMAGE CARDS */

.transformation-wrap .ck-image-card {
    width: 46%;
}


/* Unique image height for this section */

.transformation-wrap .ck-image-card img {
    height: 500px;
}


/*
   Built Here uses the global dark overlay.
   Before + After already uses its own label gradient,
   so remove the global card overlay here.
*/

.transformation-wrap .ck-image-card::after {
    display: none;
}


/* Preserve the gentler transformation zoom */

.transformation-wrap .ck-image-card:hover img {
    transform: scale(1.04);
    opacity: 1;
}


/* -------------------------------- LABEL */

.transformation-wrap .ck-image-label {
    padding: 3% 4%;

    background:
        linear-gradient(
            to top,
            rgba(0,0,0,.95),
            rgba(0,0,0,.10)
        );

    font-size: 180%;
}


/* -------------------------------- CENTER ARROW */

.transformation-arrow {
    width: 5%;
    text-align: center;

    font-family: Arial, Helvetica, sans-serif;
    font-size: 375%;
    font-weight: 700;
    line-height: 100%;

    color: var(--ck-red);
}

/* 1440 */
@media only screen and (max-width: 1440px) {
    .transformation-arrow {
        font-size: 320%;
    }
}

/* 1100 */
@media only screen and (max-width: 1100px) {
    .transformation-arrow {
        font-size: 280%;
    }
}

/* 900 */
@media only screen and (max-width: 900px) {
    .transformation-arrow {
        width: 100%;
        font-size: 260%;
        transform: rotate(90deg);
    }
}

/* -------------------------------- BUTTON POSITION */

.transformation-button {
    width: 100%;

    padding-top: 1.5%;

    text-align: center;
}

.ck-button:hover {
    color: var(--ck-silver) !important;
    border-color: var(--ck-silver) !important;
}

/* =====================================================
   1440
===================================================== */

@media only screen and (max-width: 1440px) {

    .transformation-section {
        padding: 6% 0;
    }


    .transformation-heading {
        width: 80%;
    }


    .transformation-wrap {
        width: 94%;

        column-gap: 1.5%;
    }


    .transformation-wrap .ck-image-card img {
        height: 430px;
    }


    .transformation-wrap .ck-image-label {
        font-size: 160%;
    }


    .transformation-arrow {
        font-size: 260%;
    }


    .transformation-button {
        padding-top: 4%;
    }

}



/* =====================================================
   1100
===================================================== */

@media only screen and (max-width: 1100px) {

    .transformation-section {
        padding: 7% 0;
    }


    .transformation-heading {
        width: 90%;
    }


    .transformation-wrap {
        width: 94%;

        column-gap: 1%;
    }


    .transformation-wrap .ck-image-card {
        width: 45%;
    }


    .transformation-wrap .ck-image-card img {
        height: 360px;
    }


    .transformation-wrap .ck-image-label {
        font-size: 150%;
    }


    .transformation-arrow {
        font-size: 220%;
    }


    .transformation-button {
        padding-top: 5%;
    }

}



/* =====================================================
   900
===================================================== */

@media only screen and (max-width: 900px) {

    .transformation-section {
        padding: 10% 0;
    }


    .transformation-heading {
        width: 90%;

        padding-bottom: 7%;
    }


    .transformation-wrap {
        width: 90%;

        flex-direction: column;

        row-gap: 25px;
    }


    .transformation-wrap .ck-image-card {
        width: 100%;
    }


    .transformation-wrap .ck-image-card img {
        height: auto;
    }


    .transformation-wrap .ck-image-label {
        font-size: 170%;
    }


    .transformation-arrow {
        width: 100%;

        font-size: 220%;

        transform: rotate(90deg);
    }


    .transformation-button {
        padding-top: 8%;
    }

}

/* =====================================================
   END FROM THIS TO THIS
===================================================== */





/* =====================================================
   BUILT HERE
   Section-specific layout only.
   Appearance comes from global CK classes.
===================================================== */


/* -------------------------------- MAIN LAYOUT */

.built-here {
    width: 90%;

    margin-left: auto;
    margin-right: auto;

    padding: 2% 0;

    display: flex;
    align-items: stretch;

    column-gap: 2%;
}


/* -------------------------------- INTRO */

.built-here-intro {
    width: 22%;

    padding: 3%;

    text-align: left;
}


/* BUILT HERE HEADING SPACING */

.built-here-intro .ck-section-heading {
    margin: 2% 0 6% 0;
}


/* BUILT HERE COPY SPACING */

.built-here-intro .ck-section-copy {
    margin-bottom: 12%;
}


/* -------------------------------- IMAGE GRID */

.built-here-grid {
    width: 76%;

    display: flex;

    align-items: stretch;
    justify-content: space-between;

    column-gap: 1%;
}


/* CARD WIDTH */

.built-here-grid .ck-image-card {
    width: 19.2%;
}


/* IMAGE HEIGHT */

.built-here-grid .ck-image-card img {
    height: 390px;
}



/* =====================================================
   1440
===================================================== */

@media only screen and (max-width: 1440px) {

    .built-here {
        width: 94%;
        column-gap: 1.5%;
    }


    .built-here-intro {
        width: 24%;
    }


    .built-here-intro .ck-section-heading {
        font-size: 270%;
    }


    .built-here-intro .ck-section-copy {
        font-size: 95%;
    }


    .built-here-intro .ck-text-link {
        font-size: 105% !important;
    }


    .built-here-grid {
        width: 74%;
    }


    .built-here-grid .ck-image-card img {
        height: 340px;
    }


    .built-here-grid .ck-image-label {
        font-size: 115%;
    }

}



/* =====================================================
   1100
===================================================== */

@media only screen and (max-width: 1100px) {

    .built-here {
        width: 90%;

        flex-direction: column;

        row-gap: 30px;
    }


    .built-here-intro {
        width: 100%;

        padding: 4%;

        text-align: center;
    }


    .built-here-intro .ck-section-heading {
        font-size: 250%;

        margin-bottom: 3%;
    }


    .built-here-intro .ck-section-copy {
        width: 80%;

        margin-left: auto;
        margin-right: auto;

        margin-bottom: 4%;
    }


    .built-here-intro .ck-text-link {
        font-size: 110% !important;
    }


    .built-here-grid {
        width: 100%;

        flex-wrap: nowrap;

        column-gap: 1%;
        row-gap: 0;
    }


    .built-here-grid .ck-image-card {
        flex: 0 0 19.2%;

        width: 19.2%;
    }


    .built-here-grid .ck-image-card img {
        height: 300px;
    }


    .built-here-grid .ck-image-label {
        font-size: 115%;
    }

}



/* =====================================================
   900
===================================================== */

@media only screen and (max-width: 900px) {

    .built-here {
        width: 90%;

        padding: 10% 0;

        row-gap: 25px;
    }


    .built-here-intro {
        padding: 7%;
    }


    .built-here-intro .ck-section-heading {
        font-size: 220%;
    }


    .built-here-intro .ck-section-copy {
        width: 100%;

        font-size: 100%;
    }


	 .built-here-grid {
        flex-direction: column;
        row-gap: 20px;
    }

    .built-here-grid .ck-image-card {
        width: 100%;
        flex: 0 0 100%;
    }

	
	  
    .built-here-grid .ck-image-card img {
        height: auto;

        min-height: 300px;
    }


    .built-here-grid .ck-image-label {
        font-size: 160%;

        padding: 5%;
    }

}





/* =====================================================
   CLIENT REVIEWS
   Section-specific layout only.
   Typography comes from global CK classes.
===================================================== */

.client-reviews {
    width: 100%;

    padding: 2% 0 0 0;

    background-color: var(--ck-black);

    overflow: hidden;
}


/* =====================================================
   REVIEWS HEADING
===================================================== */

.client-reviews-heading {
    width: 70%;

    margin-left: auto;
    margin-right: auto;

    padding-bottom: 3%;

    text-align: center;
}


/* Unique heading spacing */

.client-reviews-heading .ck-line-title {
    margin: 0 0 2% 0;
}


/* Unique copy width */

.client-reviews-heading .ck-section-copy {
    width: 80%;

    margin-left: auto;
    margin-right: auto;

    text-align: center;
}



/* =====================================================
   MARQUEE WRAPPER
===================================================== */

.reviews-marquee-wrap {
    position: relative;

    width: 100%;

    overflow: hidden;

    padding: 1% 0 2% 0;
}


/* --------------------------------
   DARK FADE LEFT + RIGHT
-------------------------------- */

.reviews-marquee-wrap::before,
.reviews-marquee-wrap::after {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;

    width: 6%;

    z-index: 5;

    pointer-events: none;
}


.reviews-marquee-wrap::before {
    left: 0;

    background:
        linear-gradient(
            to right,
            var(--ck-black) 0%,
            rgba(9,9,9,0) 100%
        );
}


.reviews-marquee-wrap::after {
    right: 0;

    background:
        linear-gradient(
            to left,
            var(--ck-black) 0%,
            rgba(9,9,9,0) 100%
        );
}



/* =====================================================
   REVIEW IMAGES
===================================================== */

.client-reviews .marquee-r img {
    max-width: 30%;

    margin: 1.5% !important;

    border-radius: 12px;

    border: 1px solid rgba(197,31,38,.30);

    box-shadow:
        0 10px 30px rgba(0,0,0,.35);

    transition:
        transform .3s ease,
        border-color .3s ease;
}


/* -------------------------------- HOVER */

.client-reviews .marquee-r img:hover {
    transform: scale(1.03);

    border-color: var(--ck-silver);
}



/* =====================================================
   CLIENT REVIEWS - 1440
===================================================== */

@media only screen and (max-width: 1440px) {

    .client-reviews {
        padding: 6% 0;
    }


    .client-reviews-heading {
        width: 80%;
    }


    .client-reviews-heading .ck-section-copy {
        width: 85%;
    }


    .client-reviews .marquee-r img {
        max-width: 34%;
    }

}



/* =====================================================
   CLIENT REVIEWS - 1100
===================================================== */

@media only screen and (max-width: 1100px) {

    .client-reviews {
        padding: 7% 0;
    }


    .client-reviews-heading {
        width: 90%;
    }


    .client-reviews-heading .ck-section-copy {
        width: 90%;

        font-size: 95%;
    }


    .client-reviews .marquee-r img {
        max-width: 42%;
    }

}



/* =====================================================
   CLIENT REVIEWS - 900
===================================================== */

@media only screen and (max-width: 900px) {

    .client-reviews {
        padding: 10% 0;
    }


    .client-reviews-heading {
        width: 90%;

        padding-bottom: 7%;
    }


    .client-reviews-heading .ck-section-copy {
        width: 100%;

        font-size: 120%;

        line-height: 150%;
    }


    .client-reviews .marquee-r img {
        max-width: 75%;

        margin: 3% !important;
    }

}


/* =====================================================
   END CLIENT REVIEWS
===================================================== */


/* START: CLIENT REVIEW MARQUEE ============================================================================================================== */

.marquee-container-r {
    width: 100%;

    position: relative;

    overflow: hidden;

    white-space: nowrap;
}


.marquee-r {
    display: inline-block;

    animation: reviews-marquee 40s linear infinite;

    will-change: transform;
}


.marquee-r:hover {
    animation-play-state: paused;
}


.marquee-r img {
    max-width: 100%;
    height: auto;

    display: inline-block;

    margin: 3% !important;

    vertical-align: top;

    border-radius: 25px;

    box-shadow:
        1px 4px 10px rgba(0, 0, 0, .10),
        0 0 2px rgba(0, 0, 0, .05);
}


@keyframes reviews-marquee {

    0% {
        transform: translateX(100%);
    }

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

}


/* END: CLIENT REVIEW MARQUEE ================================================================================================================ */



/* =====================================================
   FEATURED BUILDS
   Section-specific layout only.
   Appearance comes from global CK classes.
===================================================== */

.featured-builds {
    width: 90%;

    margin-left: auto;
    margin-right: auto;

    padding: 5% 0;
}


/* =====================================================
   HEADING
===================================================== */

.featured-builds-heading {
    width: 70%;

    margin-left: auto;
    margin-right: auto;

    padding-bottom: 3%;

    text-align: center;
}


.featured-builds-heading .ck-line-title {
    margin: 0 0 2% 0;
}


.featured-builds-heading .ck-section-copy {
    width: 80%;

    margin-left: auto;
    margin-right: auto;

    text-align: center;
}



/* =====================================================
   FEATURED BUILDS GRID
===================================================== */

.featured-builds-grid {
    width: 100%;

    display: flex;

    align-items: stretch;
    justify-content: space-between;

    column-gap: 2%;
}



/* =====================================================
   FEATURED BUILD CARD
   Panel color + border come from ck-panel.
===================================================== */

.featured-build-card {
    width: 32%;

    overflow: hidden;

    transition:
        border-color .3s ease,
        transform .3s ease;
}


.featured-build-card:hover {
    border-color: var(--ck-silver);

    transform: translateY(-4px);
}



/* =====================================================
   FEATURED BUILD IMAGE
===================================================== */

.featured-build-image {
    position: relative;

    display: block;

    width: 100%;

    overflow: hidden;
}


.featured-build-image img {
    width: 100%;
    height: 430px;

    display: block;

    object-fit: cover;

    transition:
        transform .5s ease,
        opacity .5s ease;
}


/* -------------------------------- IMAGE GRADIENT */

.featured-build-image::after {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;
    bottom: 0;

    background:
        linear-gradient(
            to bottom,
            rgba(0,0,0,0) 60%,
            rgba(0,0,0,.55) 100%
        );

    pointer-events: none;
}


/* -------------------------------- IMAGE HOVER */

.featured-build-card:hover .featured-build-image img {
    transform: scale(1.05);

    opacity: .90;
}



/* =====================================================
   FEATURED BUILD INFO
===================================================== */

.featured-build-info {
    width: 100%;

    padding: 6%;

    text-align: left;
}


/* -------------------------------- CARD HEADING */

.featured-build-info .ck-card-heading {
    margin: 0 0 2% 0;

    font-size: 220%;
}


/* -------------------------------- BUILD TYPE */

.featured-build-info .ck-card-meta {
    padding-bottom: 6%;
}


/* =====================================================
   FEATURED BUILDS BUTTON
===================================================== */

.featured-builds-button {
    width: 100%;

    padding-top: 3%;

    text-align: center;
}



/* =====================================================
   FEATURED BUILDS - 1440
===================================================== */

@media only screen and (max-width: 1440px) {

    .featured-builds {
        width: 94%;

        padding: 6% 0;
    }


    .featured-builds-heading {
        width: 80%;
    }


    .featured-builds-heading .ck-section-copy {
        width: 85%;
    }


    .featured-builds-grid {
        column-gap: 1.5%;
    }


    .featured-build-image img {
        height: 380px;
    }


    .featured-build-info {
        padding: 5%;
    }


    .featured-build-info .ck-card-heading {
        font-size: 200%;
    }


    .featured-build-info .ck-card-meta {
        font-size: 95%;
    }


    .featured-build-info .ck-text-link-light {
        font-size: 105% !important;
    }


    .featured-builds-button {
        padding-top: 4%;
    }

}



/* =====================================================
   FEATURED BUILDS - 1100
   Keep all 3 cards across
===================================================== */

@media only screen and (max-width: 1100px) {

    .featured-builds {
        width: 94%;
        padding: 7% 0;
    }

    .featured-builds-heading {
        width: 90%;
    }

    .featured-builds-heading .ck-section-copy {
        width: 90%;
        font-size: 95%;
    }

    .featured-builds-grid {
        flex-wrap: nowrap;
        column-gap: 1.5%;
    }

    .featured-build-card {
        flex: 0 0 32%;
        width: 32%;
    }

    .featured-build-image img {
        height: 300px;
    }

    .featured-build-info {
        padding: 5%;
    }

    .featured-build-info .ck-card-heading {
        font-size: 175%;
    }

    .featured-build-info .ck-card-meta {
        font-size: 95%;
    }

    .featured-build-info .ck-text-link-light {
        font-size: 100% !important;
    }

    .featured-builds-button {
        padding-top: 5%;
    }
}


/* =====================================================
   FEATURED BUILDS - 900
===================================================== */

@media only screen and (max-width: 900px) {

    .featured-builds {
        width: 90%;

        padding: 10% 0;
    }


    .featured-builds-heading {
        width: 100%;

        padding-bottom: 7%;
    }


    .featured-builds-heading .ck-section-copy {
        width: 100%;

        font-size: 120%;

        line-height: 150%;
    }


    .featured-builds-grid {
        flex-direction: column;

        row-gap: 30px;
    }


    .featured-build-card {
        width: 100%;
    }


    .featured-build-image img {
        height: auto;

        min-height: 300px;
    }


    .featured-build-info {
        padding: 7%;
    }


    .featured-build-info .ck-card-heading {
        font-size: 210%;
    }


    .featured-build-info .ck-card-meta {
        font-size: 105%;
    }


    .featured-builds-button {
        padding-top: 8%;
    }

}


/* =====================================================
   END FEATURED BUILDS
===================================================== */



/* =====================================================
   BRANDS / DEALERS
   Section-specific marquee layout only.
   Typography comes from global CK classes.
===================================================== */

.brands-section {
    width: 100%;

    padding: 5% 0;

    background-color: var(--ck-dark);

    overflow: hidden;

    border-top: 1px solid rgba(197,31,38,.25);
    border-bottom: 1px solid rgba(197,31,38,.25);
}



/* =====================================================
   BRANDS HEADING
===================================================== */

.brands-heading {
    width: 70%;

    margin-left: auto;
    margin-right: auto;

    padding-bottom: 3%;

    text-align: center;
}


/* Unique heading spacing */

.brands-heading .ck-line-title {
    margin: 0 0 2% 0;
}


/* Unique copy width */

.brands-heading .ck-section-copy {
    width: 80%;

    margin-left: auto;
    margin-right: auto;

    text-align: center;
}



/* =====================================================
   DEALER MARQUEE
===================================================== */

.dealer-marquee {
    position: relative;

    width: 100%;

    overflow: hidden;

    padding: 2% 0;
}



/* =====================================================
   DEALER TRACK
===================================================== */

.dealer-marquee-track {
    width: max-content;

    display: flex;

    align-items: center;

    column-gap: 70px;

    animation: dealerMarquee 45s linear infinite;
}



/* --------------------------------
   PAUSE ON HOVER
-------------------------------- */

.dealer-marquee:hover .dealer-marquee-track {
    animation-play-state: paused;
}



/* =====================================================
   DEALER LINKS
===================================================== */

.dealer-marquee-track a {
    display: flex;

    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    padding: 15px;

    transition:
        transform .3s ease,
        opacity .3s ease;
}


.dealer-marquee-track a:hover {
    transform: scale(1.08);
}



/* =====================================================
   DEALER LOGOS
===================================================== */

.dealer-marquee-track img {
    width: auto;

    max-width: 260px;

    height: 150px;

    object-fit: contain;

    display: block;

    opacity: .90;

    transition: opacity .3s ease;
}


.dealer-marquee-track a:hover img {
    opacity: 1;
}



/* =====================================================
   SIDE FADES
===================================================== */

.dealer-marquee::before,
.dealer-marquee::after {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;

    width: 6%;

    z-index: 5;

    pointer-events: none;
}


.dealer-marquee::before {
    left: 0;

    background:
        linear-gradient(
            to right,
            var(--ck-dark) 0%,
            rgba(17,17,17,0) 100%
        );
}


.dealer-marquee::after {
    right: 0;

    background:
        linear-gradient(
            to left,
            var(--ck-dark) 0%,
            rgba(17,17,17,0) 100%
        );
}



/* =====================================================
   DEALER ANIMATION
===================================================== */

@keyframes dealerMarquee {

    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }

}



/* =====================================================
   BRANDS / DEALERS - 1440
===================================================== */

@media only screen and (max-width: 1440px) {

    .brands-section {
        padding: 6% 0;
    }


    .brands-heading {
        width: 80%;
    }


    .brands-heading .ck-section-copy {
        width: 85%;
    }


    .dealer-marquee {
        padding: 2.5% 0;
    }


    .dealer-marquee-track {
        column-gap: 55px;
    }


    .dealer-marquee-track img {
        max-width: 230px;

        height: 135px;
    }

}



/* =====================================================
   BRANDS / DEALERS - 1100
===================================================== */

@media only screen and (max-width: 1100px) {

    .brands-section {
        padding: 7% 0;
    }


    .brands-heading {
        width: 90%;
    }


    .brands-heading .ck-section-copy {
        width: 90%;

        font-size: 95%;
    }


    .dealer-marquee {
        padding: 3% 0;
    }


    .dealer-marquee-track {
        column-gap: 40px;
    }


    .dealer-marquee-track img {
        max-width: 200px;

        height: 115px;
    }

}



/* =====================================================
   BRANDS / DEALERS - 900
===================================================== */

@media only screen and (max-width: 900px) {

    .brands-section {
        padding: 10% 0;
    }


    .brands-heading {
        width: 90%;

        padding-bottom: 7%;
    }


    .brands-heading .ck-section-copy {
        width: 100%;

        font-size: 120%;

        line-height: 150%;
    }


    .dealer-marquee {
        padding: 5% 0;
    }


    .dealer-marquee-track {
        column-gap: 30px;

        animation-duration: 35s;
    }


    .dealer-marquee-track img {
        max-width: 170px;

        height: 100px;
    }

}



/* =====================================================
   REDUCED MOTION
===================================================== */

@media (prefers-reduced-motion: reduce) {

    .dealer-marquee-track {
        animation: none;

        flex-wrap: wrap;

        justify-content: center;

        width: 90%;

        margin-left: auto;
        margin-right: auto;
    }

}


/* =====================================================
   END BRANDS / DEALERS
===================================================== */


/* =====================================================
   HAVE A PROJECT CTA
   Heading across top.
   Logo + content underneath.
===================================================== */

.project-cta {
    width: 90%;

    margin-left: auto;
    margin-right: auto;

    margin-top: 5%;
    margin-bottom: 5%;

    padding: 5% 4%;

    display: block;

    background:
        linear-gradient(
            135deg,
            var(--ck-dark) 0%,
            #080808 65%,
            #16090a 100%
        );

    border: 1px solid rgba(197,31,38,.45);
}



/* =====================================================
   CTA HEADING
===================================================== */

.project-cta-heading {
    width: 100%;

    margin-left: auto;
    margin-right: auto;

    padding-bottom: 3%;

    text-align: center;
}


.project-cta-heading .ck-eyebrow {
    width: 100%;

    margin: 0 auto 2% auto;

    text-align: center;
}


.project-cta-heading .ck-line-title {
    margin: 0;
}


/* Larger than normal section heading intentionally */

.project-cta-heading .ck-section-heading {
    width: 100%;

    font-size: 400%;
    font-weight: 800;

    line-height: 90%;

    text-align: center;
}



/* =====================================================
   CTA BODY
===================================================== */

.project-cta-body {
    width: 100%;

    display: flex;
    align-items: center;

    column-gap: 6%;
}



/* =====================================================
   CTA LOGO
===================================================== */

.project-cta-logo {
    width: 30%;

    text-align: center;
}


.project-cta-logo img {
    width: 100%;

    height: auto;

    display: block;

    margin-left: auto;
    margin-right: auto;
}



/* =====================================================
   CTA CONTENT
===================================================== */

.project-cta-content {
    width: 64%;

    text-align: left;
}


.project-cta-content .ck-section-copy {
    width: 80%;

    margin-bottom: 5%;

    font-size: 105%;
}



/* =====================================================
   CTA BUTTON AREA
===================================================== */

.project-cta-buttons {
    display: flex;

    align-items: center;

    column-gap: 3%;
}


/* --------------------------------
   PRIMARY BUTTON
-------------------------------- */

.project-cta-buttons .ck-button {
    font-size: 120%;

    padding-top: 2% !important;
    padding-right: 4% !important;
    padding-bottom: 2% !important;
    padding-left: 4% !important;
}


/* --------------------------------
   PHONE LINK
-------------------------------- */

.project-cta-buttons .ck-text-link-light {
    font-size: 115% !important;
}



/* =====================================================
   HAVE A PROJECT - 1440
===================================================== */

@media only screen and (max-width: 1440px) {

    .project-cta {
        width: 94%;

        padding: 5%;
    }


    .project-cta-heading .ck-section-heading {
        font-size: 360%;
    }


    .project-cta-logo {
        width: 28%;
    }


    .project-cta-logo img {
        max-width: 300px;
    }


    .project-cta-content {
        width: 66%;
    }


    .project-cta-content .ck-section-copy {
        width: 85%;

        font-size: 100%;
    }


    .project-cta-buttons {
        column-gap: 2%;
    }



    .project-cta-buttons .ck-button {
        font-size: 115%;
    }


    .project-cta-buttons .ck-text-link-light {
        font-size: 110% !important;
    }

}



/* =====================================================
   HAVE A PROJECT - 1100
===================================================== */

@media only screen and (max-width: 1100px) {

    .project-cta {
        width: 90%;

        padding: 6% 5%;

    }


    .project-cta-heading .ck-section-heading {
        font-size: 320%;
    }


    .project-cta-body {
        column-gap: 4%;
    }


    .project-cta-logo {
        width: 26%;
    }


    .project-cta-logo img {
        max-width: 250px;
    }


    .project-cta-content {
        width: 70%;
    }


    .project-cta-content .ck-section-copy {
        width: 95%;
    }


    .project-cta-buttons {
        column-gap: 2%;
    }


    .project-cta-buttons .ck-button {
        font-size: 105%;
    }


    .project-cta-buttons .ck-text-link-light {
        font-size: 100% !important;
    }

}


/* PROJECT CTA - 900 ========================================================================================================================= */

@media only screen and (max-width: 900px) {

    .project-cta {
        width: 90%;

        padding: 10% 7%;

        text-align: center;
    }


    .project-cta-heading {
        width: 100%;

        padding-bottom: 7%;
    }


    .project-cta-heading .ck-section-heading {
        font-size: 280%;
        line-height: 95%;
    }


    .project-cta-body {
        width: 100%;

        flex-direction: column;

        row-gap: 30px;
    }


    /* LOGO */

    .project-cta-logo {
        width: 55%;

        text-align: center;
    }


    .project-cta-logo img {
        width: 100%;
        height: auto;

        display: block;

        margin-left: auto;
        margin-right: auto;
    }


    /* CONTENT */

    .project-cta-content {
        width: 100%;

        text-align: center;
    }


    .project-cta-content .ck-section-copy {
        width: 100%;

        margin-left: auto;
        margin-right: auto;

        margin-bottom: 8%;

        font-size: 110%;
        line-height: 160%;

        text-align: center;
    }


    /* BUTTONS */

    .project-cta-buttons {
        width: 100%;

        flex-direction: column;

        align-items: center;

        row-gap: 18px;
    }


    .project-cta-buttons .ck-button {
        font-size: 115%;

        padding-top: 4% !important;
        padding-right: 7% !important;
        padding-bottom: 4% !important;
        padding-left: 7% !important;
    }


    .project-cta-buttons .ck-text-link-light {
        font-size: 110% !important;
    }

}


/* =====================================================
   END HAVE A PROJECT
===================================================== */



/* START: WHAT WE BUILD ====================================================================================================================== */


/* =====================================================
   WHAT WE BUILD SECTION
===================================================== */

.what-we-build {
    width: 90%;

    margin-left: auto;
    margin-right: auto;

    padding: 6% 0;
}



/* =====================================================
   WHAT WE BUILD HEADING
===================================================== */

.what-we-build-heading {
    width: 70%;

    margin: 0 auto 2% auto;

    text-align: center;
}


/* 1440 */

@media only screen and (max-width: 1440px) {

    .what-we-build-heading {
        width: 80%;
    }

}


/* 1100 */

@media only screen and (max-width: 1100px) {

    .what-we-build-heading {
        width: 90%;
    }

}


/* 900 */

@media only screen and (max-width: 900px) {

    .what-we-build-heading {
        width: 100%;

        margin-bottom: 4%;
    }

}



/* =====================================================
   RED TAGLINE ABOVE GRID
===================================================== */

.what-we-build-grid-intro {
    width: 100%;

    margin: 0 auto 2% auto;

    font-family: "Barlow Condensed", Arial, sans-serif;

    font-size: 140%;
    font-weight: 700;

    line-height: 120%;

    letter-spacing: 1px;

    text-align: center;
    text-transform: uppercase;

    color: var(--ck-red);
}


/* 900 */

@media only screen and (max-width: 900px) {

    .what-we-build-grid-intro {
        margin-bottom: 4%;
    }

}



/* =====================================================
   WHAT WE BUILD GRID
===================================================== */

.what-we-build-grid {
    width: 100%;

    display: flex;
    flex-wrap: wrap;

    gap: 2%;
}


/* 900 */

@media only screen and (max-width: 900px) {

    .what-we-build-grid {
        gap: 4%;
    }

}



/* =====================================================
   WHAT WE BUILD CARDS
===================================================== */

.what-we-build-card {
    width: 23.5%;

    margin-bottom: 2%;

    position: relative;

    overflow: hidden;
}


/* 900 */

@media only screen and (max-width: 900px) {

    .what-we-build-card {
        width: 48%;

        margin-bottom: 4%;
    }

}


/* 600 */

@media only screen and (max-width: 600px) {

    .what-we-build-card {
        width: 48%;
    }

}



/* =====================================================
   WHAT WE BUILD IMAGES
===================================================== */

.what-we-build-card img {
    width: 100%;
    height: 240px;

    display: block;

    object-fit: cover;
}


/* 1440 */

@media only screen and (max-width: 1440px) {

    .what-we-build-card img {
        height: 210px;
    }

}


/* 1100 */

@media only screen and (max-width: 1100px) {

    .what-we-build-card img {
        height: 185px;
    }

}


/* 900 */

@media only screen and (max-width: 900px) {

    .what-we-build-card img {
        height: 220px;
    }

}


/* 600 */

@media only screen and (max-width: 600px) {

    .what-we-build-card img {
        height: 160px;
    }

}


/* =====================================================
   WHAT WE BUILD - SERVICE LINK
===================================================== */

.what-we-build-service-link {
    width: 100%;

    display: block;

    position: relative;

    text-decoration: none;

    color: inherit;
}


/* =====================================================
   WHAT WE BUILD - LIGHTBOX BUTTON
===================================================== */

.what-we-build-photo-link,
.what-we-build-photo-link:link,
.what-we-build-photo-link:visited {
    position: absolute;

    top: 4%;
    right: 4%;

    z-index: 5;

    padding: 6px 10px;

    font-family: "Barlow Condensed", Arial, sans-serif;

    font-size: 85%;
    font-weight: 700;

    letter-spacing: 1px;

    text-transform: uppercase;
    text-decoration: none;

    color: var(--ck-white) !important;

    background-color: rgba(0,0,0,.80);

    border: 1px solid var(--ck-red);
}


.what-we-build-photo-link:hover,
.what-we-build-photo-link:focus {
    color: var(--ck-red) !important;

    background-color: rgba(0,0,0,.95);
}


/* END: WHAT WE BUILD ======================================================================================================================== */

	
/* HOMEPAGE VERIFIED / LOCKED - DESKTOP THROUGH MOBILE ======================================================================================= */
