﻿@keyframes shine-skeleton-lines {
    0 {
        background-position: -100px
    }

    40%,100% {
        background-position: 600px
    }
}

.mod__max-w-xl {
    max-width: 1436px;
    margin: auto
}

@keyframes spin {
    0 {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg)
    }
}

@keyframes rotateImageLoading {
    from {
        transform: translate(-50%,-50%) rotateY(0) scale(1.01)
    }

    to {
        transform: translate(-50%,-50%) rotateY(360deg) scale(1.01)
    }
}

.cmp__cc-lite-overlapping {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 16px 0 32px;
    background: var(--color-bg-03)
}

.cmp__cc-lite-overlapping__wrapper {
    position: relative
}

.cmp__cc-lite-overlapping__top {
    position: relative
}

.cmp__cc-lite-overlapping__text {
    position: relative;
    z-index: 1
}

.cmp__cc-lite-overlapping__title {
    position: relative;
    text-align: center;
    overflow: hidden;
    width: 100%;
    margin: auto;
    padding: 0 16px
}

    .cmp__cc-lite-overlapping__title .cmp-title {
        max-width: 100%
    }

    .cmp__cc-lite-overlapping__title .cmp-title__text {
        margin: auto auto 16px;
        text-transform: uppercase;
        font-family: 'CupraLight',sans-serif;
        font-weight: 300;
        font-size: 24px;
        line-height: 1.2;
        color: var(--color-font-01)
    }

.cmp__cc-lite-overlapping__subtitle {
    position: relative;
    width: 100%;
    padding: 0 16px;
    text-align: center;
    overflow: hidden;
    margin: auto
}

    .cmp__cc-lite-overlapping__subtitle .cmp-text {
        font-family: 'CupraLight',sans-serif;
        font-weight: 300;
        font-size: 16px;
        line-height: 1.2;
        position: relative;
        z-index: 1;
        overflow: hidden;
        margin-bottom: 16px;
        color: var(--color-font-01)
    }

.cmp__cc-lite-overlapping__media {
    position: relative;
    height: auto;
    aspect-ratio: 1;
    margin: 0 16px;
    background-color: var(--color-bg-01)
}

.cmp__cc-lite-overlapping__loader {
    position: absolute;
    width: 100%;
    height: 100%;
    background: var(--color-bg-01)
}

    .cmp__cc-lite-overlapping__loader:after {
        position: absolute;
        width: 60px;
        height: 60px;
        content: "";
        left: 50%;
        top: 50%;
        transform: translate(-50%,-50%);
        mask: url("../../../../../../etc.clientlibs/cupra-website/components/clientlibs/resources/icons/logo-cupra.svg") no-repeat 100% 100%;
        -webkit-mask: url("../../../../../../etc.clientlibs/cupra-website/components/clientlibs/resources/icons/logo-cupra.svg") no-repeat 100% 100%;
        -webkit-mask-size: cover;
        mask-size: cover;
        background-color: var(--color-bg-03);
        opacity: .1
    }

.cmp__cc-lite-overlapping__image {
    position: relative;
    width: 100%;
    height: 100%;
    transition: opacity .3s ease
}

    .cmp__cc-lite-overlapping__image img {
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 1;
        transition: opacity .6s ease;
        object-position: -46vw 6vw
    }

        .cmp__cc-lite-overlapping__image img[data-type="background-filter"] {
            transform: scale(1);
            object-position: center
        }

        .cmp__cc-lite-overlapping__image img[data-active] {
            opacity: 1
        }

.cmp__cc-lite-overlapping__optionstop {
    position: absolute;
    z-index: 1;
    top: 16px;
    left: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #ccc;
    background: var(--color-bg-03)
}

.cmp__cc-lite-overlapping__icon {
    position: relative;
    width: 20px;
    height: 20px;
    margin: 4px;
    cursor: pointer;
    background: #a3a3a3;
    opacity: .8;
    transition: background .3s ease
}

    .cmp__cc-lite-overlapping__icon[data-active="true"] {
        background: var(--color-bg-01);
        opacity: 1
    }

.cmp__cc-lite-overlapping__icon--light {
    mask: url("../../../../../../etc.clientlibs/cupra-website/components/clientlibs/resources/icons/vdm/sun.svg") no-repeat 100% 100%;
    -webkit-mask: url("../../../../../../etc.clientlibs/cupra-website/components/clientlibs/resources/icons/vdm/sun.svg") no-repeat 100% 100%;
    -webkit-mask-size: cover;
    mask-size: cover
}

.cmp__cc-lite-overlapping__icon--dark {
    mask: url("../../../../../../etc.clientlibs/cupra-website/components/clientlibs/resources/icons/vdm/moon.svg") no-repeat 100% 100%;
    -webkit-mask: url("../../../../../../etc.clientlibs/cupra-website/components/clientlibs/resources/icons/vdm/moon.svg") no-repeat 100% 100%;
    -webkit-mask-size: 80%;
    mask-size: 80%
}

.cmp__cc-lite-overlapping__icon--without-bg {
    mask: url("/assets/icons/car2.svg") no-repeat 100% 100%;
    -webkit-mask: url("/assets/icons/car2.svg") no-repeat 100% 100%;
    -webkit-mask-size: cover;
    mask-size: cover
}

.cmp__cc-lite-overlapping__icon--with-bg {
    mask: url("/assets/icons/road.svg") no-repeat 100% 100%;
    -webkit-mask: url("/assets/icons/road.svg") no-repeat 100% 100%;
    -webkit-mask-size: 90%;
    mask-size: 90%
}

.cmp__cc-lite-overlapping__bottom {
    position: relative
}

.cmp__cc-lite-overlapping__tabs {
    position: relative;
    display: flex;
    justify-content: center;
    gap: 40px;
    margin: 16px 0
}

.cmp__cc-lite-overlapping__tab {
    position: relative;
    display: inline-block;
    cursor: pointer
}

    .cmp__cc-lite-overlapping__tab:before {
        position: absolute;
        width: 1px;
        height: 100%;
        top: 0;
        left: -20px;
        background: var(--color-ui-02);
        content: ""
    }

    .cmp__cc-lite-overlapping__tab p {
        font-family: 'CupraLight',sans-serif;
        font-weight: 300;
        font-size: 16px;
        line-height: 1.2;
        color: var(--color-font-01);
        margin-bottom: 0
    }

    .cmp__cc-lite-overlapping__tab:first-child:before {
        display: none
    }

    .cmp__cc-lite-overlapping__tab:last-child {
        margin-right: 0
    }

    .cmp__cc-lite-overlapping__tab.cmp__cc-lite-overlapping__tab--selected p {
        font-family: 'CupraRegular',sans-serif;
        font-weight: 400
    }

.cmp__cc-lite-overlapping__options {
    position: relative
}

.cmp__cc-lite-overlapping__option {
    display: none
}

    .cmp__cc-lite-overlapping__option[data-active="true"] {
        display: block
    }

.cmp__cc-lite-overlapping__option__wrapper {
    position: relative;
    display: flex;
    overflow-x: auto;
    scrollbar-width: none
}

    .cmp__cc-lite-overlapping__option__wrapper::-webkit-scrollbar {
        display: none
    }

.cmp__cc-lite-overlapping__content {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    overflow-y: -moz-hidden-unscrollable;
    -webkit-overflow-scrolling: touch;
    overflow: -moz-scrollbars-none;
    -ms-overflow-style: none;
    scroll-behavior: smooth;
    scrollbar-width: none;
    margin: 0 auto;
    padding: 2px 0 0
}

    .cmp__cc-lite-overlapping__content::-webkit-scrollbar {
        display: none
    }

.cmp__cc-lite-overlapping__category {
    flex: 0 0 auto;
    margin-left: 5px
}

    .cmp__cc-lite-overlapping__category:first-child {
        margin-left: 0
    }

    .cmp__cc-lite-overlapping__category:last-child .cmp__cc-lite-overlapping__list {
        margin-right: 0
    }

        .cmp__cc-lite-overlapping__category:last-child .cmp__cc-lite-overlapping__list .cmp__cc-lite-overlapping__item:last-child {
            margin-right: 0
        }

.cmp__cc-lite-overlapping__list {
    position: relative;
    white-space: nowrap;
    margin: 8px 8px 0 0;
    padding: 0 16px
}

.cmp__cc-lite-overlapping__item {
    position: relative;
    display: inline-block;
    height: 100%;
    margin-right: 16px;
    padding-bottom: 4px
}

    .cmp__cc-lite-overlapping__item:last-child {
        margin-right: 6px
    }

    .cmp__cc-lite-overlapping__item img {
        position: relative;
        bottom: 0;
        height: 100%;
        transition: all .3s ease;
        width: 44px
    }

        .cmp__cc-lite-overlapping__item img.cc-active {
            transform: translateY(-2px)
        }

    .cmp__cc-lite-overlapping__item:after {
        position: absolute;
        content: "";
        width: 100%;
        height: 0;
        background: var(--color-bg-01);
        top: 100%;
        margin-top: -2px;
        left: 0;
        transition: all .3s ease
    }

    .cmp__cc-lite-overlapping__item:has(img.cc-active):after {
        height: 2px
    }

.cmp__cc-lite-overlapping__info {
    text-align: center;
    font-family: 'CupraRegular',sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.2;
    overflow: hidden;
    margin: 16px auto 0;
    padding: 0 16px;
    color: var(--color-font-01)
}

    .cmp__cc-lite-overlapping__info:has(label[style="display: none;"]) {
        margin-top: 2px
    }

.cmp__cc-lite-overlapping__selected {
    margin-bottom: 0
}

    .cmp__cc-lite-overlapping__selected[style="display: none;"] + .color-rims-selected-item-span {
        margin-top: 8px
    }

.cmp__cc-lite-overlapping__selected-span {
    display: block;
    font-family: 'CupraLight',sans-serif;
    font-weight: 300;
    font-size: 12px;
    line-height: 1.2;
    margin: 8px 0 0;
    color: var(--color-font-01)
}

.cmp__cc-lite-overlapping__button {
    position: relative;
    display: table;
    max-width: calc(100% - 32px);
    margin: 24px auto 0
}

    .cmp__cc-lite-overlapping__button .cmp-button {
        display: table;
        border: 0;
        background-color: #1b1b1b;
        transition: all .3s ease;
        padding: 11px 16px
    }

        .cmp__cc-lite-overlapping__button .cmp-button .cmp-button__text {
            font-family: 'CupraRegular',sans-serif;
            font-weight: 400;
            font-size: 14px;
            line-height: 1.2;
            color: var(--color-font-03)
        }

        .cmp__cc-lite-overlapping__button .cmp-button:hover {
            background-color: rgba(27,27,27,0.8);
            border: 0
        }

@media(min-width: 764px) {
    .cmp__cc-lite-overlapping {
        padding-top: 0;
        padding-bottom: 66px
    }

    .cmp__cc-lite-overlapping__text {
        padding: 32px 0
    }

    .cmp__cc-lite-overlapping__title {
        padding: 0 32px
    }

        .cmp__cc-lite-overlapping__title .cmp-title__text {
            font-size: 40px;
            margin-bottom: 16px
        }

    .cmp__cc-lite-overlapping__subtitle {
        padding: 0 32px
    }

        .cmp__cc-lite-overlapping__subtitle .cmp-text {
            margin-bottom: 0;
            font-size: 24px
        }

    .cmp__cc-lite-overlapping__media {
        margin: 0 32px
    }

    .cmp__cc-lite-overlapping__optionstop {
        top: 24px;
        left: 16px
    }

    .cmp__cc-lite-overlapping__icon {
        width: 24px;
        height: 24px;
        margin: 8px
    }

    .cmp__cc-lite-overlapping__tabs {
        margin: 32px 0 44px
    }

    .cmp__cc-lite-overlapping__tab p {
        font-size: 24px;
        margin: 0
    }

    .cmp__cc-lite-overlapping__content {
        padding: 2px 0 0
    }

    .cmp__cc-lite-overlapping__list {
        padding: 0 32px
    }

    .cmp__cc-lite-overlapping__info {
        font-size: 20px;
        margin-top: 24px;
        padding: 0 32px
    }

    .cmp__cc-lite-overlapping__selected-span {
        font-size: 20px
    }

    .cmp__cc-lite-overlapping__button {
        max-width: calc(100% - 64px)
    }

        .cmp__cc-lite-overlapping__button .cmp-button {
            padding: 13px 16px
        }

            .cmp__cc-lite-overlapping__button .cmp-button .cmp-button__text {
                font-size: 16px
            }
}

@media(min-width: 1016px) {
    .cmp__cc-lite-overlapping {
        padding-bottom: 24px
    }

    .cmp__cc-lite-overlapping__text {
        padding: 16px 0
    }

    .cmp__cc-lite-overlapping__title .cmp-title__text {
        font-size: 30px;
        margin-bottom: 8px
    }

    .cmp__cc-lite-overlapping__subtitle .cmp-text {
        font-size: 20px
    }

    .cmp__cc-lite-overlapping__media {
        aspect-ratio: 2.5
    }

    .cmp__cc-lite-overlapping__image img {
        object-position: center
    }

    .cmp__cc-lite-overlapping__optionstop {
        top: 16px;
        left: 16px
    }

    .cmp__cc-lite-overlapping__tabs {
        margin: 24px 0 16px
    }

    .cmp__cc-lite-overlapping__tab p {
        font-size: 20px;
        margin-bottom: 0
    }

    .cmp__cc-lite-overlapping__wrapper {
        padding: 0;
        margin: 0 auto
    }

    .cmp__cc-lite-overlapping__content {
        touch-action: none;
        overflow: scroll
    }

    .cmp__cc-lite-overlapping__list {
        margin-top: 0;
        height: 50px
    }

    .cmp__cc-lite-overlapping__info {
        margin-top: 8px
    }

    .cmp__cc-lite-overlapping__button {
        margin: 24px auto 0
    }
}

@media(min-width: 1436px) {
    .cmp__cc-lite-overlapping__wrapper {
        max-width: 1436px;
        margin: 0 auto
    }

    .cmp__cc-lite-overlapping__text {
        padding: 32px 0
    }

    .cmp__cc-lite-overlapping__title .cmp-title__text {
        font-size: 40px;
        margin-bottom: 16px
    }

    .cmp__cc-lite-overlapping__subtitle .cmp-text {
        font-size: 24px
    }

    .cmp__cc-lite-overlapping__optionstop {
        top: 32px;
        left: 32px
    }

    .cmp__cc-lite-overlapping__tabs {
        margin-bottom: 32px
    }

    .cmp__cc-lite-overlapping__tab p {
        font-size: 24px
    }

    .cmp__cc-lite-overlapping__info {
        font-size: 24px;
        margin-top: 16px
    }
}
