    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) {
        position: relative;
        width: 100vw;
        height: auto;
        margin-left: calc(50% - 50vw);
        font-family: HyundaiSansHead-Medium, Verdana, sans-serif;
        background-position: center center;
        background-repeat: no-repeat;
    }

    .contentBlocksPage-content:has(> .contentBlocksBlock:first-child > .contentBlockIntro) {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-imageContainer {
        position: relative;
        width: 100%;
        min-height: 440px;
        background-size: cover;
        background-position: center;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-CarouselContainer {
        position: absolute;
        overflow: hidden;
        top: 0;
        right: 0;
        bottom: -4px;
        left: 0;
        width: 100%;
        max-width: 100%;
        padding: 0;
        margin: 0 auto;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-CarouselContainer.MainCarousel-CarouselContainer--imageCentered img {
        position: relative;
        top: 50%;
        width: 100%;
        transform: translateY(-52%);
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-GradientOverlay {
        position: absolute;
        z-index: 2;
        top: 0;
        left: 0;
        bottom: -3px;
        width: 100%;
        pointer-events: none;
        background: linear-gradient(135deg, rgba(0, 0, 0, .8) 0%, rgba(0, 0, 0, .6) 25%, rgba(0, 0, 0, 0) 50%);
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) img {
        z-index: 1;
        width: 100%;
        object-fit: cover;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselTextBox {
        position: absolute;
        z-index: 3;
        top: 0;
        left: 0;
        width: 100%;
        max-width: 570px;
        padding: 6rem 0 0 81px;
        color: #fff;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselTextBox--detail {
        max-width: 570px;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselTitle,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselSubTitle,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselBlockText {
        font-family: HyundaiSansHead-Medium, Verdana, sans-serif !important;
        color: #fff;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselTitle {
        margin-bottom: 1rem;
        font-size: 5rem !important;
        line-height: 5.4rem !important;
        letter-spacing: .8px !important;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselSubTitle {
        margin-bottom: 20px;
        font-size: 2.2rem;
        line-height: 2.8rem;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselBlockText {
        font-size: 1.8rem;
        line-height: 3rem;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselBlockText--regular {
        font-family: HyundaiSansHead-Regular, Verdana, sans-serif !important;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselBlockText .big {
        display: inline-block;
        margin-bottom: 9px;
        font-family: HyundaiSansHead-Medium, Verdana, sans-serif;
        font-size: 4rem;
        line-height: 3.2rem;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-infoBox {
        position: static;
        right: auto;
        bottom: auto;
        z-index: 20;
        width: auto;
        max-width: none;
        padding: 0;
        margin: 0;
        color: #fff;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-infoBox-in {
        display: inline-block;
        padding: 0;
        background: transparent;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated {
        position: relative;
        z-index: 20;
        display: inline-block;
        max-width: 100%;
        overflow: hidden;
        padding: 20px 80px;
        border: 3px solid transparent;
        font-family: HyundaiSansHead-Medium, Verdana, sans-serif;
        font-size: 16px;
        line-height: 1.2;
        color: #fff;
        text-align: center;
        text-decoration: none !important;
        white-space: nowrap;
        cursor: pointer;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:before {
        content: " ";
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 0;
        height: 100%;
        background-color: #fff;
        transition: .3s ease-in-out;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:after {
        content: "\0020EA";
        position: absolute;
        top: 50%;
        left: 50%;
        opacity: 0;
        font-size: 4.3rem;
        color: #000;
        transform: translate(-50%, -50%) rotate(180deg);
        transition: .3s ease-in-out;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:hover,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:focus {
        color: #fff;
        text-decoration: none !important;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:hover:before,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:focus:before {
        width: 100%;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:hover:after,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:focus:after {
        opacity: 1;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated--blue {
        border: none;
        background-color: #002c5f;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated--blue:before {
        background-color: #002c5f;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated--blue:after {
        color: #fff;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated--blue:hover:before,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated--blue:focus:before {
        background-color: #003c78;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:empty,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:empty {
        display: none;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .model-List-Card-btn-arrow {
        position: absolute;
        z-index: 5;
        top: 50%;
        left: 50%;
        display: block;
        width: 20px;
        height: 10px;
        opacity: 0;
        transform: translate(-100%, 0);
        transition: transform .3s ease-in .1s, opacity .1s ease-out .1s;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .model-List-Card-btn-arrow:before {
        content: "\0020EA";
        display: block;
        font-family: sans-serif;
        font-size: 4rem;
        line-height: .5rem;
        color: #fff;
        transform: rotate(180deg);
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:hover .model-List-Card-btn-arrow,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated:focus .model-List-Card-btn-arrow {
        opacity: 1;
        transform: translate(-50%, 0);
        transition: transform .2s ease-in .2s, opacity .2s ease-out .2s;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-infoLink,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink {
        position: relative;
        display: block;
        margin-bottom: 20px;
        padding-left: 38px;
        font-family: HyundaiSansText-Medium, Verdana, sans-serif;
        font-size: 16px;
        color: #fff !important;
        text-decoration: none !important;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-infoLink:hover,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:hover {
        color: #fff !important;
        text-decoration: none !important;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:before,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:after,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink .infoLink-text {
        border-color: #fff !important;
        color: #fff !important;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:before,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:after {
        content: "";
        position: absolute;
        left: 0;
        display: block;
        border: 0 solid currentColor;
        transition-duration: .15s;
        transition-property: all;
        transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:before {
        top: .45em;
        width: 28px;
        height: 0;
        border-top-width: 2px;
        border-style: solid;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:after {
        top: calc(.45em - 4px);
        left: 20px;
        width: 8px;
        height: 8px;
        border-top-width: 2px;
        border-right-width: 2px;
        border-style: solid;
        transform: rotate(45deg);
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:hover:before {
        width: 30px;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:hover:after {
        left: 23px;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink-arrow {
        position: relative;
        display: none;
        width: 28px;
        height: 8px;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink-arrow:before,
    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink-arrow:after {
        content: "";
        display: block;
        position: absolute;
        border: 0 solid;
        transition-duration: .15s;
        transition-property: all;
        transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink-arrow:before {
        right: 0;
        width: 8px;
        height: 8px;
        border-top-width: 2px;
        border-right-width: 2px;
        border-style: solid;
        transform: rotate(45deg);
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink-arrow:after {
        top: 50%;
        width: 28px;
        height: 0;
        border-top-width: 2px;
        border-style: solid;
        transform: translateY(-50%);
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink-text {
        transition-duration: .15s;
        transition-property: all;
        transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:hover .infoLink-arrow:before {
        right: -3px;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:hover .infoLink-arrow:after {
        width: 30px;
    }

    :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:hover .infoLink-text {
        margin-left: 3px;
    }

    @media only screen and (min-width: 1200px) {
        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-imageContainer {
            min-height: 690px;
            aspect-ratio: 1920 / 550;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselTextBox {
            max-width: 800px;
            padding: 8rem 0 0 154px;
        }
    }

    @media only screen and (max-width: 1199px) {
        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselTextBox {
            padding: 6rem 0 0 81px;
        }
    }

    @media only screen and (max-width: 991px) {
        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-imageContainer {
            min-height: 332px;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselTextBox {
            padding: 4rem 0 0 60px;
        }
    }

    @media only screen and (max-width: 767px) {
        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-imageContainer {
            position: absolute;
            min-height: auto;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-imageContainer:after {
            content: "";
            position: absolute;
            z-index: 1;
            top: 0;
            bottom: -1px;
            display: block;
            width: 100%;
            background-image: linear-gradient(-180deg, transparent 35%, #fff 52%);
            opacity: 1;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-CarouselContainer {
            position: relative;
            padding: 0;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-CarouselContainer.MainCarousel-CarouselContainer--imageCentered img {
            position: static;
            top: auto;
            transform: none;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-GradientOverlay {
            display: block;
            position: absolute;
            top: 180px;
            left: 0;
            width: 100%;
            height: 150px;
            bottom: auto;
            pointer-events: none;
            background: linear-gradient(360deg, #fff 58%, rgba(255, 255, 255, .6) 77%, transparent 100%);
            z-index: 1;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselTextBox {
            position: relative;
            z-index: 2;
            top: 0;
            left: 0;
            width: 100%;
            min-height: 130px;
            margin-top: 20px;
            padding: 0 20px;
            color: #000;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselTitle {
            color: #000;
            font-size: 3.3rem !important;
            line-height: 4.1rem !important;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselSubTitle,
        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselBlockText,
        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink,
        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:hover {
            color: #000 !important;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:before {
            top: .4em;
            border-color: #000 !important;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .infoLink:after {
            border-color: #000 !important;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselSubTitle {
            margin-bottom: 10px;
            font-size: 2rem;
            line-height: 2.4rem;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselBlockText {
            font-size: 1.7rem;
            line-height: 2.8rem;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .MainCarousel-carouselBlockText .big {
            margin-bottom: 3px;
            font-size: 3.2rem;
            line-height: 3.2rem;
        }

        :is(.contentBlockIntro, .contentBlocksBlock > .MainCarousel-CarouselItem--light) .BtnAnimated {
            padding: 16px 42px;
            white-space: normal;
        }
    }

    @media only screen and (max-width: 480px) {
        /* Older intro blocks contain separate desktop and mobile images. The editor
           changes the primary image only, so keep using it at the smallest size. */
        .contentBlockIntro img.u-xxs-hidden {
            display: block !important;
        }

        .contentBlockIntro img.u-xxs-block {
            display: none !important;
        }
    }
