.card .media {
    transition: opacity 300ms ease;
}

.hovering-card img:not([alt='View All']) {
    display: block !important;
}

@media (max-width: 990px) {
    .card-active:not(.hovering-card) img.card-image:not(:first-child) {
        visibility: hidden;
    }
}

.card-wrapper {
    color: inherit;
    height: 100%;
    position: relative;
    text-decoration: none;
}

.card {
    text-decoration: none;
    text-align: var(--text-alignment);
}

.card:not(.ratio) {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.card.card--horizontal {
    --text-alignment: left;
    --image-padding: 0rem;
    flex-direction: row;
    align-items: flex-start;
    gap: 1.5rem;
}

.card--horizontal.ratio:before {
    padding-bottom: 0;
}

.card--card.card--horizontal {
    padding: 1.2rem;
}

.card--card.card--horizontal.card--text {
    column-gap: 0;
}

.card--card {
    height: 100%;
}

.card--card,
.card--standard .card__inner {
    position: relative;
    box-sizing: border-box;
    border-radius: var(--border-radius);
    border: var(--border-width) solid rgba(var(--color-foreground), var(--border-opacity));
}

.card--card:after,
.card--standard .card__inner:after {
    content: '';
    position: absolute;
    z-index: -1;
    width: calc(var(--border-width) * 2 + 100%);
    height: calc(var(--border-width) * 2 + 100%);
    top: calc(var(--border-width) * -1);
    left: calc(var(--border-width) * -1);
    border-radius: var(--border-radius);
    box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset)
        var(--shadow-blur-radius) rgba(var(--color-shadow), var(--shadow-opacity));
}

.card .card__inner .card__media {
    overflow: hidden;
    /* Fix for Safari border bug on hover */
    z-index: 0;
    border-radius: calc(var(--border-radius) - var(--border-width) - var(--image-padding));
}

.card--card .card__inner .card__media {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.card--standard.card--text {
    background-color: transparent;
}

.card-information {
    text-align: center;
    position: relative;
    z-index: 2;
}

.card__media,
.card .media {
    bottom: 0;
    position: absolute;
    top: 0;
}

.card .media {
    width: 100%;
}

.card__media {
    margin: var(--image-padding);
    width: calc(100% - 2 * var(--image-padding));
}

.card--standard .card__media {
    margin: var(--image-padding);
}

.card__inner {
    width: 100%;
}

.card--media .card__inner .card__content {
    position: relative;
    padding: calc(var(--image-padding) + 1rem);
}

.card__content {
    display: grid;
    grid-template-rows: minmax(0, 1fr) max-content minmax(0, 1fr);
    padding: 1rem;
    width: 100%;
    flex-grow: 1;
}

.card__content--auto-margins {
    grid-template-rows: minmax(0, auto) max-content minmax(0, auto);
}

.card__information {
    grid-row-start: 2;
    padding: 1.3rem 1rem;
}

.card:not(.ratio) > .card__content {
    grid-template-rows: max-content minmax(0, 1fr) max-content auto;
}

body:not(.template-product):not(.template-collection-brand-blocks-main)
    main
    .carousel-track-wrapper {
    position: absolute;
    height: 1px;
    bottom: 19px;
    left: 15px;
    width: 25px;
    transition: all 0.2s ease;
    line-height: 1;
    display: block;
}

.card-showing-atb .carousel-track-wrapper {
    opacity: 0;
}
body:not(.template-product):not(.template-collection-brand-blocks-main) main .carousel-track {
    position: relative;
    width: 25px;
    z-index: 2;
    height: 1px;
    background-color: rgba(0, 0, 0, 0.1);
    background-position: center center;
    background-size: 100%;
    background-repeat: no-repeat;
}

/* CSS */
body:not(.template-product):not(.template-collection-brand-blocks-main)
    main
    .carousel-rectangle {
    position: absolute;
    width: 20%;
    height: 1px;
    background-color: #000;
    top: 0px;
    display: block;
}

@media screen and (max-width: 990px) {
    .plp-sold-out-sale .carousel-track-wrapper {
        display: none !important;
    }

    .plp-product-standard .card--standard .card__inner:after,
    .card__heading a:after {
        display: none;
    }
}

.template-product #mediaGallery .carousel-track {
    position: relative;
    width: 1px;
    z-index: 2;
    height: 40px;
    background-color: rgba(0, 0, 0, 0.08);
}

.template-product #mediaGallery .carousel-track-wrapper {
    position: fixed;
    height: 40px;
    bottom: 200px;
    right: 15px;
    width: 1px;
    transition: all 500ms ease;
    line-height: 1;
    display: block;
    z-index: 2;
    transform: translateY(0px);
}

@media (max-width: 990px) {
    .pdp-variants-opened.template-product #mediaGallery .carousel-track-wrapper {
        transform: translateY(-48px) !important;
        transition: all 500ms ease;
    }
}

.template-product #mediaGallery .carousel-rectangle {
    position: absolute;
    width: 1px;
    background-color: #000;
    display: block !important;
    left: 0px;
}

@media screen and (min-width: 750px) {
    .card-wrapper .carousel-track-wrapper {
        display: none !important;
    }

    .card__information {
        padding-bottom: 1.7rem;
        padding-top: 1.7rem;
    }
}

.card__badge {
    align-self: flex-end;
    grid-row-start: 3;
    justify-self: flex-start;
}

.card__badge.top {
    align-self: flex-start;
    grid-row-start: 1;
}

.card__badge.right {
    justify-self: flex-end;
}

.card:not(.card--horizontal) > .card__content > .card__badge {
    margin: 1.3rem;
}

.card__media .media img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
    width: 100%;
}

.card__inner:not(.ratio) > .card__content {
    height: 100%;
}

.card__heading {
    margin-top: 0;
    margin-bottom: 0;
}

.card__heading:last-child {
    margin-bottom: 0;
}

.card--card.card--media > .card__content {
    margin-top: calc(0rem - var(--image-padding));
}

.card--standard.card--text a::after,
.card--card .card__heading a::after {
    bottom: calc(var(--border-width) * -1);
    left: calc(var(--border-width) * -1);
    right: calc(var(--border-width) * -1);
    top: calc(var(--border-width) * -1);
}

.card__heading a::after {
    bottom: 0;
    content: '';
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
}

.card__heading a:after {
    outline-offset: 0.3rem;
}

.card__heading a:focus:after {
    box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),
        0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3);
    outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
}

.card__heading a:focus-visible:after {
    box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),
        0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3);
    outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
}

.card__heading a:focus:not(:focus-visible):after {
    box-shadow: none;
    outline: 0;
}

.card__heading a:focus {
    box-shadow: none;
    outline: 0;
}

@media screen and (min-width: 990px) {
    .card .media.media--hover-effect > img:only-child,
    .card-wrapper .media.media--hover-effect > img:only-child {
        transition: transform var(--duration-long) ease;
    }

    .card:hover .media.media--hover-effect > img:first-child:only-child,
    .card-wrapper:hover .media.media--hover-effect > img:first-child:only-child {
        transform: scale(1.03);
    }

    .card-wrapper:hover .media.media--hover-effect > img:first-child:not(:only-child) {
        opacity: 0;
    }

    .card-wrapper:hover .media.media--hover-effect > img + img {
        opacity: 1;
        transition: transform var(--duration-long) ease;
        transform: scale(1.03);
    }

    .underline-links-hover:hover a {
        text-decoration: underline;
        text-underline-offset: 0.3rem;
    }
}

.card--standard.card--media .card__inner .card__information,
.card--standard.card--text:not(.card--horizontal) > .card__content .card__heading,
.card--standard:not(.card--horizontal) > .card__content .card__badge,
.card--standard.card--text.article-card > .card__content .card__information,
.card--standard > .card__content .card__caption {
    display: none;
}

.card--standard > .card__content {
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 100%;
    display: block;
}

.card--standard > .card__content .card__information {
    padding-left: 0;
    padding-right: 0;
}

.card--card.card--media .card__inner .card__information,
.card--card.card--text .card__inner,
.card--card.card--media > .card__content .card__badge {
    display: none;
}

.card--horizontal .card__badge,
.card--horizontal.card--text .card__inner {
    display: none;
}

.card--extend-height {
    height: 100%;
}

.card--extend-height.card--standard.card--text,
.card--extend-height.card--media {
    display: flex;
    flex-direction: column;
}

.card--extend-height.card--standard.card--text .card__inner,
.card--extend-height.card--media .card__inner {
    flex-grow: 1;
}

.card .icon-wrap {
    margin-left: 0.8rem;
    white-space: nowrap;
    transition: transform var(--duration-short) ease;
    overflow: hidden;
}

.card-information > * + * {
    margin-top: 0.5rem;
}

.card-information {
    width: 100%;
}

.card-information > * {
    line-height: calc(1 + 0.4 / var(--font-body-scale));
    color: rgb(var(--color-foreground));
}

.card-information > .price {
    color: rgb(var(--color-foreground));
}

.card-information > .rating {
    margin-top: 0.4rem;
}

.card-information > *:not(.visually-hidden:first-child) + *:not(.rating) {
    margin-top: 0rem;
}

.card-information .caption {
    letter-spacing: 0.07rem;
}

.card-article-info {
    margin-top: 1rem;
}

.card__information .product-card-family-title,
.card__information .product-card-title {
    display: block;
    text-transform: uppercase;
}

.card__information .product-card-family-title {
    font-size: 1.4rem;
    letter-spacing: 0.16rem;
    font-weight: 300;
}

.card__information .product-card-title {
    padding: 6px 10px;
    font-size: 1.2rem;
    letter-spacing: 0.16rem;
    font-weight: 300;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 100%;
    line-height: 1;
}

.card__information {
    text-align: left;
}

.card__information .full-unstyled-link:hover {
    text-decoration: none !important;
}

.family-products-swatch-bar {
    line-height: 1;
    text-align: right;
    width: 100%;
    display: block;
    position: absolute;
    left: 0px;
    background-color: white;
    bottom: 134px;
    padding: 5px 15px;
    z-index: 4;
    transition: all 600ms ease;
    max-height: 45px;
    overflow: hidden;
    opacity: 0;
}

.show-large-family .family-products-swatch-bar {
    max-height: 600px;
}

.show-large-family .family-swatches-view {
    color: #fff;
    font-size: 0px;
}

.show-large-family .family-swatches-view:after {
    content: '-';
    font-size: 31px;
    color: black;
}

@media (min-width: 991px) {
    .card-brand-block .card__inner.color-background-2.gradient.ratio {
        --ratio-percent: 155% !important;
        overflow: hidden;
    }

    .card-brand-block img {
        clip-path: inset(0px) !important;
    }

    #product-grid li.grid__item:hover .family-products-swatch-bar {
        opacity: 1;
    }
}

.family-products-swatch-bar.large-family .family-swatch {
    width: 14.28%;
}

.family-products-swatch-bar:not(.large-family) .family-swatch {
    display: inline-block;
    vertical-align: top;
}

.product-card-heart {
    float: left;
    width: 35px;
    vertical-align: top;
    height: 30px;
}

button.pdp-wishlist-icon {
    background-color: transparent;
    border: none;
    position: relative;
    width: 25px;
    display: block;
    height: 25px;
    padding: 0;
    margin: 0 auto;
    top: 3px;
}

span.added-to-wishlist-hide,
span.added-to-wishlist {
    position: absolute;
    width: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

button.pdp-wishlist-icon img {
    width: 100%;
}

.family-products-swatches img {
    width: 100%;
}

.family-products-swatches a {
    display: inline-block;
    width: 30px;
}

.family-swatch:not(.product-card-heart) {
    display: inline-block;
    vertical-align: top;
}

.family-swatch.family-plus {
    height: 35px;
    line-height: 31px;
    text-align: center;
    font-size: 24px;
    cursor: pointer;
}

.family-swatch {
    text-align: center;
    padding: 5px;
    height: 35px;
    margin-right: -5px;
    width: 14.28%;
}

.template-collection-brand-blocks-main .quick-add {
    bottom: 148px;
}

span.added-to-wishlist-hide + .added-to-wishlist {
    opacity: 0;
    visibility: hidden;
}

.card-brand-block .family-products-swatch-bar {
    display: none;
}

.family-swatch img {
    display: block;
    border: 1px solid #fff;
}

.family-swatch.frame-active img {
    border-color: #000;
}

.card-active {
    display: block !important;
}

.card-wrapper:not(.card-active) {
    display: none;
}

.card-active .card__media img:first-child {
    display: block !important;
}

.card-label {
    font-weight: 400;
    font-size: 1.1rem;
    letter-spacing: 0.09rem;
    text-transform: uppercase !important;
    position: absolute;
    top: 13px;
    left: 15px;
    z-index: 2;
    max-width: calc(100% - 15px);
}

span.top-ten-tag.top-ten-badge {
    left: auto;
    right: 12px;
    height: 62px;
    width: 48px;
    top: -13px;
    background-size: 100%;
    background-repeat: no-repeat;
    text-align: center;
    position: absolute;
    white-space: normal;
}

.top-ten-badge span {
    width: 30px;
    display: block;
    text-align: center;
    margin: auto;
    top: 12px;
    position: relative;
    line-height: 1.3;
    left: 1px;
}

.main-family-title {
    display: none;
}

.card-brand-block .card-wrapper img.brand-block-image-mobile {
    display: none !important;
}

@media (min-width: 991px) {
    span.best-seller-tag strong {
        padding-right: 4px;
        position: relative;
        top: 0.5px;
    }

    .tag-type-text-gif span.best-seller-tag strong {
        top: 0px;
    }
}

@media screen and (-webkit-max-device-pixel-ratio: 1) and (min-width: 991px) {
    .card-label[data-plp-tag-name='new-price-drop'] .best-seller-tag strong {
        top: 0px;
    }
}

@media (max-width: 990px) {
    .best-seller-tag strong {
        padding-right: 3.5px;
        position: relative;
        top: 0px !important;
    }

    .card-brand-block .card-wrapper img.product-desktop-image {
        display: none !important;
    }

    .card-brand-block .card-wrapper img.brand-block-image-mobile {
        display: block !important;
    }

    .main-family-title {
        display: block;
        padding-top: 0;
        font-size: 1rem;
        font-weight: 700;
        text-align: left;
        letter-spacing: 0.16rem;
        position: relative;
        left: 0;
        top: 0;
        margin-bottom: 0px;
    }

    .card-label {
        font-size: 0.7rem !important;
        top: 10px;
        left: 10px;
    }

    .template-collection-brand-blocks-main main .card__information .product-card-family-title {
        display: none;
    }

    .template-product .card__information .product-card-family-title,
    body:not(.template-collection-brand-blocks-main)
        .card__information
        .product-card-family-title,
    body.template-collection-brand-blocks-main
        header
        .card__information
        .product-card-family-title {
        font-size: 1rem;
        letter-spacing: 0.16rem;
        font-weight: 300;
        padding-bottom: 2px;
    }

    .card__information .product-card-title {
        font-size: 1rem;
        padding: 2px 10px 7px;
    }

    .price {
        font-size: 1.1rem !important;
        line-height: 1 !important;
    }

    .mobile-navbar-inner .price {
        line-height: 1.2 !important;
    }

    .card__information {
        padding-top: 10px;
    }

    span.top-ten-tag.top-ten-badge {
        left: auto;
        right: 10px;
        height: 40px;
        width: 30px;
        white-space: normal;
    }

    .top-ten-badge span {
        top: 7px;
        line-height: 1.3;
    }

    .template-collection-brand-blocks-main main #product-grid li.grid__item {
        width: calc(100% + 10px);
        max-width: calc(100% + 10px);
        padding-bottom: 0px;
        margin-bottom: 0px;
        position: relative;
        z-index: 1;
    }

    .template-collection-brand-blocks-main
        ul#product-grid
        li:not(.card-brand-block)
        .plp-grid-items-wrapper {
        white-space: nowrap;
        overflow-x: scroll;
        margin-left: -14px;
        width: calc(100% + 30px);
        max-width: calc(100% + 30px);
        background-color: #fff;
        z-index: 1;
        margin-top: -15px;
        padding-bottom: 15px;
        padding-top: 25px;
        padding-left: 12px;
    }

    .template-collection-brand-blocks-main main .card-wrapper,
    .template-collection-brand-blocks-main main .card-wrapper:not(.card-active) {
        display: inline-block !important;
        vertical-align: top;
        width: 240px;
        padding: 0 4px 0 0;
        transition: all 300ms ease;
    }

    main #product-grid .card__media .media img {
        display: block;
        background-color: white;
        border: none;
        box-shadow: none;
        outline: 0;
    }

    header .card__media .media img {
        display: block;
        background-color: white;
        border: none;
        box-shadow: none;
        outline: 0;
    }

    li.grid__item.plp-product-grid-item.card-brand-block .card-wrapper.product-card-wrapper {
        width: 100%;
        padding-right: 0px;
    }

    li.grid__item.plp-product-grid-item.card-brand-block {
        padding: 0px !important;
        margin-bottom: 15px;
    }

    li.grid__item.plp-product-grid-item.card-brand-block.card-brand-block-right {
        float: none !important;
    }

    .family-products-swatch-bar {
        display: none;
    }

    .grid__item.plp-product-grid-item.card-brand-block:not(.last-product-brand-block):not(
            .carousel-overflow
        ):not(.brand-block-1-columns) {
        width: calc(100% + 16px) !important;
        max-width: calc(100% + 16px) !important;
        margin-left: -8px !important;
    }

    .template-collection-brand-blocks-main .grid__item.plp-product-grid-item.card-brand-block {
        width: calc(100% + 30px) !important;
        max-width: calc(100% + 30px) !important;
        margin-left: -15px !important;
        white-space: normal !important;
        margin-bottom: 30px !important;
    }

    li.grid__item.plp-product-grid-item.card-brand-block {
        padding-top: 0px !important;
        padding-bottom: 0px !important;
    }

    body:not(.template-collection-brand-blocks-main):not(.template-index)
        main
        li.grid__item.plp-product-grid-item.card-brand-block:not(.brand-block-1-columns) {
        padding-top: 0px !important;
        padding-bottom: 0px !important;
        grid-column: span 2;
        width: calc(100% + 30px) !important;
        max-width: 130% !important;
        grid-row: span 1;
        margin-left: -15px !important;
    }

    .template-collection-brand-blocks-main ul#product-grid {
        padding-top: 20px;
    }
}

.card-active.hovering-card img:not(.image-active):not(.item-added-image):not([alt='View All']) {
    display: block !important;
}

body:not(.template-product) .card__inner .media img:not(.image-active) {
    opacity: 0;
    visibility: hidden;
    transition: all 700ms ease 100ms;
    will-change: opacity, visibility;
}

body:not(.template-product) .card__inner .media img.image-active {
    opacity: 1;
    visibility: visible;
    transition: all 800ms ease;
    will-change: opacity, visibility;
}

.join-the-waitlist-cta {
    text-transform: uppercase;
    font-size: 1.1rem;
    margin-top: -13px;
    display: block;
    margin: 0 auto;
    border-bottom: 1px solid;
    padding: 0px;
    cursor: pointer;
}

@media (max-width: 990px) {
    .card-information .join-the-waitlist-cta {
        font-size: 1rem;
        margin-top: -1px;
        line-height: 1;
        padding-bottom: 1px;
    }
}

@media (min-width: 991px) {
    body:not(.template-collection-brand-blocks-main)
        .card--standard
        > .card__content
        .card__information {
        min-height: 95px;
    }

    body.template-collection-brand-blocks-main
        .card--standard
        > .card__content
        .card__information {
        min-height: 98px;
    }

    .card__media video {
        width: 100% !important;
        max-width: 200% !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%);
        height: 115% !important;
    }
}

@media (max-width: 990px) {
    .product-recommendations span.active-product-tag {
        font-size: 0.85rem;
        font-weight: 400;
        letter-spacing: 0.12rem;
        font-style: italic;
        width: 49px;
        display: block;
        height: 10px;
        position: absolute;
        right: -9px;
        text-align: center;
        z-index: 2;
        top: -1px;
    }
}

.template-collection-brand-blocks-main:not(.large-product-view)
    li:not(.card-brand-block)
    .card-wrapper {
    width: 160px !important;
}

.card--standard .card__inner {
    overflow: hidden;
}

span.active-product-tag {
    font-size: 1rem;
}

@media (max-width: 990px) {
    span.active-product-tag:after {
        width: 79%;
        margin-left: auto;
        margin-right: auto;
    }
    .plp--hide-brand-blocks .card-brand-block {
        display: none !important;
    }
}

@media (max-width: 990px) and (min-width: 768px) {
    li.grid__item.plp-product-grid-item.card-brand-block {
        display: none !important;
    }
}

.card-wrapper.product-card-wrapper.card-active.product--flash-steal
    .media.media--transparent
    img.image-active {
    opacity: 0.6 !important;
}

@media (max-width: 990px) {
    .card-brand-block .card__inner picture {
        position: relative !important;
    }

    .card-brand-block .card__inner.color-background-2.gradient.ratio .card__media,
    .card-brand-block .media {
        position: relative !important;
    }

    .card-brand-block .card__inner.color-background-2.gradient.ratio {
        --ratio-percent: 125% !important;
        width: 100%;
    }

    .card-brand-block .card__inner:before {
        display: none;
    }

    .card-brand-block img[loading='lazy'] {
        clip-path: inset(0px) !important;
    }
}

.card-brand-block:not(.full-brand-block) .card-label {
    display: none !important;
}

.reveal-item .card-label,
.reveal-item span.top-number,
.reveal-item .product-card-details,
.reveal-item .card-information {
    display: none;
}

span.reveal-top-ten {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: 1px solid #000 !important;
    padding: 7px 12px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.16rem;
    font-size: 1rem;
    width: calc(100% - 30px);
    text-align: center;
}

.reveal-item .media.media--transparent {
    opacity: 0.2;
}

.mobile-navbar-content-bottom .top-ten-badge {
    display: none !important;
}

span.reveal-top-ten img {
    width: 71px;
    height: auto;
    margin: 0 auto;
}

@media (max-width: 990px) {
    span.reveal-top-ten {
        font-weight: 500;
        line-height: 1rem;
        max-width: 150px;
        letter-spacing: 0.1rem;
    }

    span.reveal-top-ten span {
        position: relative;
        top: 0.1rem;
    }
}

.template-collection-brand-blocks-main
    main
    #product-grid
    li.grid__item:first-child
    h3.main-family-title {
    margin-top: 0px;
}

.template-search .template-search__header.page-width,
.template-search #main-search-filters {
    display: none;
}

.template-search .collection-refinement-inner-wrapper {
    border-bottom: none !important;
}

@media (max-width: 990px) {
    .template-search ul.grid.product-grid.grid--2-col-tablet-down.grid--4-col-desktop {
        margin-top: 0px;
    }

    body.template-search:not(.template-collection-brand-blocks-main) #product-grid {
        padding-top: 0px;
    }
}

.plp-grid-items-wrapper::-webkit-scrollbar {
    display: none !important;
}

.plp--steal-of-the-day .product-image-color-overlay {
    background-size: 78%;
    background-repeat: no-repeat;
    background-position: center;
    background-color: rgba(240, 240, 240, 0.6);
}

.product--flash-steal .product-image-color-overlay {
    background-size: 78%;
    background-repeat: no-repeat;
    background-position: center;
    background-color: rgba(240, 240, 240, 0.6);
}

.product--flash-steal.product--tonight-only-steal .product-image-color-overlay {
    background-size: 78%;
    background-repeat: no-repeat;
    background-position: center;
    background-color: rgba(240, 240, 240, 0.6);
}

.plp-sold-out-sale .product-image-color-overlay,
.plp-sold-out-sale.product--flash-steal .product-image-color-overlay {
    background-size: 78%;
    background-repeat: no-repeat;
    background-position: center;
    background-color: rgba(240, 240, 240, 0.6);
}

@media (max-width: 990px) {
    .plp-sold-out-sale button.join-the-waitlist-cta {
        display: none;
    }
}

.template-index s.price-item.price-item--regular,
.template-name-collection s.price-item.price-item--regular {
    margin-right: 0px;
}

.price--on-sale span.price-item.price-item--sale.price-item--last {
    font-weight: bold;
    color: var(--color-add-to-bag-sale) !important;
}

@media (max-width: 990px) {
    .template-name-collection .price--on-sale .price-item--regular,
    .template-index .price--on-sale .price-item--regular,
    #predictive-search-results .price--on-sale .price-item--regular {
        font-size: 1.1rem;
    }
}

@media (min-width: 991px) {
    body:not(.template-collection-brand-blocks-main)
        .card--standard
        > .card__content
        .card__information {
        min-height: 100px;
    }
    body.template-index:not(.template-collection-brand-blocks-main)
        main
        .card--standard
        > .card__content
        .card__information {
        min-height: 90px;
    }
}

.flash-steal-price {
    font-weight: 700;
    color: var(--color-add-to-bag-sale);
}

.template-product
    .product-recommendations
    .price--on-sale
    span.price-item.price-item--sale.price-item--last,
.template-product .product-recommendations .price .price-item {
    margin: 0 !important;
}

@media (max-width: 990px) {
    #mediaGallery .product__media-list {
        transition: transform 500ms ease;
        transform: translateY(0px) !important;
    }

    #mediaGallery .product__media-list:not(.ready-to-open).nudge-carousel {
        transform: translateY(-30px) !important;
    }

    body:not(.pdp-tab-opened)
        .pdp-main-carousel
        .carousel-track-wrapper.nudge-carousel-track-wrapper {
        transform: translateY(-30px) !important;
    }

    body:not(.pdp-tab-opened) #productInfo.nudge-bottom-sheet {
        transform: translateY(calc(100% - 210px));
    }
}

.stl-kids-text {
    width: 88px;
    height: auto;
    position: relative;
}

@media (min-width: 991px) {
    .stl-kids-text {
        display: block;
        top: 3px;
    }
}

@media (max-width: 990px) {
    .stl-kids-text {
        width: 58px;
    }
}

.template-name-collection .p-w-r .pr-no-reviews {
    display: none !important;
}

.template-name-collection
    main
    .p-w-r
    .pr-snippet
    .pr-snippet-stars-png
    .pr-snippet-rating-decimal {
    display: none;
}
.template-name-collection main .pwr-category-snippets {
    display: none !important;
}

.show-left-aligned-plp .plp-product-standard .card__information .product-card-title {
    max-width: calc(100% - 5px);
    padding-left: 0px !important;
}

@media (max-width: 990px) {
    .show-left-aligned-plp .plp-product-standard .card__information .product-card-title {
        max-width: calc(100% - 25px);
        bottom: 15px;
        position: absolute;
    }

    .show-left-aligned-plp
        .predictive-search
        .plp-product-standard
        .card__information
        .product-card-title {
        bottom: 15px;
    }

    .plp-product-standard .product-card-family-title {
        height: 35px;
        overflow: hidden;
        text-overflow: ellipsis;
        padding-right: 5px;
    }
}
.show-left-aligned-plp .plp-product-standard .join-the-waitlist-cta {
    margin: 0 0 0 auto;
}

.show-left-aligned-plp .plp-product-standard .card__information .card__heading {
    text-align: left;
    padding-right: 0px;
    flex: 1 1 auto;
    min-width: 0;
}

.template-name-collection.show-left-aligned-plp .plp-product-standard .product-card-title {
    padding-left: 0px;
}

.show-left-aligned-plp .plp-product-standard .card__information {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 100%;
}

.show-left-aligned-plp .plp-product-standard .card-information {
    text-align: right;
    flex: 0 1 auto;
    white-space: nowrap;
}

.show-left-aligned-plp .plp-product-standard .card-information {
    width: auto;
}
.product-card-arrivals {
    display: none;
}

.template-name-collection.show-left-aligned-plp main .product-card-arrivals {
    display: block;
    padding-top: 2px;
}

@media (max-width: 990px) {
    body.template-collection-brand-blocks-main
        main
        .collection
        .plp-product-standard
        .card__inner
        .media
        img:first-child {
        display: block !important;
    }

    body.template-collection-brand-blocks-main
        main
        .collection
        .plp-product-standard
        .card__inner
        .media
        img:not(:first-child) {
        display: none !important;
    }

    .show-left-aligned-plp .card-information.card-sold-out {
        position: absolute;
        bottom: 6px;
        background-color: white;
    }

    .show-left-aligned-plp .join-the-waitlist-cta {
        font-size: 1rem;
        letter-spacing: 0.16rem;
    }

    .template-name-collection .card-brand-block video {
        position: relative !important;
    }

    .show-left-aligned-plp
        .plp-product-standard
        .card--standard
        > .card__content
        .card__information {
        height: 60px;
    }
}

.hide-review-stars.template-name-collection .yotpo-sr-bottom-line-summary > div:first-child {
    display: none !important;
}

.hide-review-stars.template-name-collection .yotpo-sr-bottom-line-right-panel {
    margin-left: 0px !important;
}

.hide-review-stars.template-name-collection
    .yotpo-sr-bottom-line-text.yotpo-sr-bottom-line-text--right-panel:after {
    content: ' REVIEWS';
    letter-spacing: 0.16rem;
}

.hide-review-stars.template-name-collection
    .yotpo-sr-bottom-line-text.yotpo-sr-bottom-line-text--right-panel {
    font-weight: bold !important;
    font-size: 1.1rem !important;
}

@media (max-width: 990px) {
    .card__information .yotpo-sr-bottom-line-right-panel {
        margin-left: 0px !important;
    }
    .card__information .yotpo-reviews-star-ratings-widget {
        padding-top: 0px !important;
        margin-top: -1.5px !important;
    }

    .hide-review-stars.template-name-collection
        .yotpo-sr-bottom-line-text.yotpo-sr-bottom-line-text--right-panel {
        font-size: 1rem !important;
    }

    .card__information .yotpo-reviews-star-ratings-widget svg {
        width: 11px !important;
        height: 11px !important;
    }
    .card__information .yotpo-sr-bottom-line-summary {
        flex-direction: row !important;
        gap: 4px !important;
    }

    html .card__information .yotpo-sr-bottom-line-text.yotpo-sr-bottom-line-text--right-panel {
        font-weight: 400 !important;
        font-size: 1.1rem !important;
        letter-spacing: 0.16rem !important;
    }
    .card__information .yotpo-sr-bottom-line-right-panel {
        padding-top: 1px !important;
    }
}

@media (min-width: 991px) {
    .show-left-aligned-plp .plp-product-standard .card__information {
        padding-left: 0px;
        padding-right: 0px;
    }
}

li.grid__item.recently-viewed-product img {
    opacity: 1 !important;
    visibility: visible !important;
}

.in-cart .plp--atb {
    opacity: 1;
    visibility: visible;
}

.price-drop-tag,
.restocked-tag,
.new-to-sale-tag,
.pill-shape,
.tag-type-pill-shaped {
    border-radius: 22px;
    padding: 3px 9px;
    line-height: 1 !important;
    text-align: center;
}

.restocked-tag {
    color: #394f6d;
    border: 1px solid #394f6d;
}

.new-to-sale-tag {
    color: white;
    border: none;
    background: linear-gradient(to right, #d6c740 3%, var(--color-add-to-bag-sale) 100%);
    display: inline-block !important;
}

.tag-type-pill-shaped[data-plp-tag-name='new-price-drop'] {
    color: white;
    border: none;
    background: linear-gradient(to right, #d6c740 3%, var(--color-add-to-bag-sale) 100%);
    display: inline-block !important;
}

.tag-type-pill-shaped[data-plp-tag-name='new-price-drop'] span.best-seller-tag {
    color: white !important;
}

.tag-type-pill-shaped {
    border: 1px solid;
}

@media (max-width: 990px) {
    .price-drop-tag-wrapper,
    .new-to-sale-tag-wrapper,
    .pill-shape,
    .tag-type-pill-shaped {
        top: 12px;
    }

    .price-drop-tag,
    .pill-shape,
    .tag-type-pill-shaped {
        border-width: 0.75px !important;
    }

    .template-name-collection.show-left-aligned-plp
        main
        .plp-product-standard
        .card__information.sold-out
        .card-information {
        width: auto;
        position: absolute;
        bottom: 3px;
        background-color: white;
    }

    .template-name-collection.show-left-aligned-plp
        main
        .plp-product-standard
        .card__information.sold-out
        .yotpo-widget-instance {
        display: none !important;
    }

    .show-left-aligned-plp.show-left-aligned-plp-hide-reviews.template-name-collection
        main
        .card--standard
        > .card__content
        .card__information {
        height: 55px;
    }

    .show-left-aligned-plp.show-left-aligned-plp-hide-reviews.template-name-collection
        main
        .brand-block-grid
        .card--standard
        > .card__content
        .card__information {
        height: 40px;
    }

    body.show-left-aligned-plp:not(.template-collection-brand-blocks-main):not(.template-index)
        main
        #product-grid
        li.grid__item:not(.card-brand-block) {
        padding-bottom: 23px !important;
    }
}

.card__information svg.yotpo-star-rating-icon.yotpo-sr-star-full,
.card__information svg.yotpo-star-rating-icon.yotpo-sr-star-half,
.card__information svg.yotpo-star-rating-icon-empty,
.card__information .star-container.yotpo-sr-star-full,
.card__information .star-container.yotpo-sr-star-half,
.card__information .star-container.yotpo-sr-star-empty,
.card__information svg.yotpo-star-rating-icon.yotpo-sr-star-empty {
    background-image: url(Star_Black_NEW_Large.png) !important;
    background-size: 100%;
    background-repeat: no-repeat;
    margin-right: 1px !important;
}

.card__information .star-container.yotpo-sr-star-half {
    background-image: url(Star_HALF.png) !important;
}

.card__information .star-container.yotpo-sr-star-empty,
.card__information svg.yotpo-star-rating-icon.yotpo-sr-star-empty {
    background-image: url(Star_LightGrey_NEW_Large.png) !important;
}

.card__information .yotpo-star-rating .star-container svg path,
.card__information .star-container.yotpo-sr-star-full svg path,
.card__information .star-container.yotpo-sr-star-half svg path,
.card__information .star-container.yotpo-sr-star-empty svg path {
    opacity: 0;
}

.card__information .yotpo-reviews-star-ratings-widget svg {
    width: 13px;
    height: 13px;
}

.card__information .yotpo-sr-bottom-line-text.yotpo-sr-bottom-line-text--right-panel {
    font-family: 'AkzidenzGrotesk', Arial, sans-serif !important;
    font-weight: 300 !important;
    font-size: 1.2rem !important;
    letter-spacing: 0.05rem !important;
    line-height: 1 !important;
}

.card__information .yotpo-sr-bottom-line-summary {
    align-items: center !important;
}

.card__information .yotpo-reviews-star-ratings-widget {
    padding-top: 3px;
}

.card__information .yotpo-sr-bottom-line-right-panel {
    margin-left: -4px;
    padding-top: 0.77px;
}

.show-left-aligned-plp-hide-reviews.template-name-collection .yotpo-widget-instance {
    display: none !important;
}

.template-name-collection:not(.show-left-aligned-plp) .yotpo-widget-instance {
    display: none !important;
}

@media (min-width: 991px) {
    body.show-left-aligned-plp-hide-reviews
        .brand-block-grid
        .card--standard
        > .card__content
        .card__information {
        min-height: 75px !important;
    }
}

@media (max-width: 990px) {
    .last-product-brand-block.brand-block-2-columns-mobile {
        margin: 0px !important;
        width: 100%;
        grid-column: span 2;
        max-width: 100%;
    }

    .card__information .yotpo-sr-bottom-line-right-panel {
        margin-left: 0px !important;
    }

    .card__information .yotpo-sr-bottom-line-summary div:first-child:not(.star-container) {
        margin-right: 0 !important;
    }
}

.absolute {
    position: absolute !important;
}

.position-left {
    left: 0;
}

.position-right {
    right: 0px;
}

.bottom-0 {
    bottom: 0px;
}

.bottom-20 {
    bottom: 1.8rem;
}

.left-20 {
    left: 2rem;
}

.top-20 {
    top: 2rem;
}

.right-20 {
    right: 2rem;
}

.bottom-45 {
    bottom: 45px;
}

.top-45 {
    top: 45px;
}

.text-left {
    text-align: left;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.brand-block-label {
    position: absolute;
    opacity: 0.8;
    z-index: 2;
    color: white;
}

.brand-block-label a {
    color: white;
}

.brand-block-label.position-top-left {
    top: 7px;
    left: 10px;
}

.brand-block-label.position-top-right {
    top: 7px;
    right: 10px;
}

.brand-block-label.position-bottom-left {
    bottom: 7px;
    left: 10px;
}

.brand-block-label.position-bottom-right {
    bottom: 7px;
    right: 10px;
}
.brand-block-copy {
    position: absolute;
    width: 100%;
    display: flex;
    justify-content: center;
    color: white;
    gap: 0px;
    flex-direction: column;
    z-index: 2;
    padding-left: 25px;
    padding-right: 25px;
}

.brand-block-title {
    font-size: 3rem;
    font-weight: bold;
    color: white;
    letter-spacing: 0.25rem;
    margin: 0;
    padding-bottom: 0;
}

.brand-block-text {
    font-size: 2.1rem;
    letter-spacing: 0.07rem;
    margin: 0;
    font-weight: 400;
    line-height: 1.6;
}

.brand-block-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-weight: bold;
    z-index: 0;
    padding: 0px;
    margin-top: 30px;
    width: auto;
    transition: all 300ms ease;
    z-index: 2;
}

.brand-block-cta span {
    position: relative;
    letter-spacing: 0.16rem;
    z-index: 1;
    padding: 17px 40px;
    transition: all 300ms ease;
    font-size: 1.4rem;
    color: black;
}

.brand-block-cta span:after {
    content: '';
    position: absolute;
    background-color: #fff;
    width: 100%;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    opacity: 0.8;
    transition: all 300ms ease;
}

@media (min-width: 991px) {
    .brand-block-cta:hover span {
        color: white;
    }

    .brand-block-cta:hover span:after {
        background-color: #000;
    }

    .brand-block-copy {
        padding-left: 35px;
        padding-right: 35px;
    }
}

.card__inner:has(.brand-block-cta.absolute.bottom-0) .brand-block-copy {
    bottom: 90px;
}

.card__inner:has(.brand-block-cta.top-0) .brand-block-copy.top-45 {
    top: 90px;
}

.brand-block-cta.absolute.bottom-0.position-right span {
    padding: 12px 40px;
}

@media (max-width: 990px) {
    .brand-block-title {
        letter-spacing: 0.16rem;
        font-size: 2rem;
    }

    .brand-block-text {
        font-size: 1.5rem;
        letter-spacing: 0.03rem;
        margin: 0;
        font-weight: 400;
        line-height: 1.42;
    }

    .brand-block-cta span {
        letter-spacing: 0.16rem;
        padding: 12px 35px;
        font-size: 1.2rem;
    }

    .brand-block-label {
        font-size: 1.2rem;
    }

    .brand-block-cta {
        margin-top: 15px;
    }

    .brand-block-copy {
        bottom: 35px;
    }

    .position-right {
        right: 0px;
    }

    .bottom-0 {
        bottom: -1.5px;
    }

    .card__inner:has(.brand-block-cta.absolute.bottom-0) .brand-block-copy {
        bottom: 60px !important;
    }
}

.brand-block-product-link {
    position: absolute;
    z-index: 2;
}

.brand-block-product-link a {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.show-brand-block-preview .brand-block-product-link:first-of-type {
    background-color: rgb(241 175 175 / 40%);
}

.show-brand-block-preview .brand-block-product-link:nth-of-type(2) {
    background-color: rgb(204 241 175 / 40%);
}

.show-brand-block-preview .brand-block-product-link:nth-of-type(3) {
    background-color: rgb(175 200 241 / 40%);
}

.brand-block-product-link-cta-text {
    font-size: 1.4rem;
    font-weight: bold;
    color: white;
    border-bottom: 1px solid;
    padding-bottom: 1px;
}

.brand-block-product-link-cta {
    position: absolute;
}

.brand-block-product-link-cta.bottom-right-text-centered {
    right: 0px;
    text-align: center;
}

.brand-block-product-link-cta.bottom-right-text-right {
    text-align: center;
}

.brand-block-product-link-cta.bottom-left-text-left {
    text-align: left;
}

.brand-block-product-link-cta.bottom-left-text-centered {
    left: 0px;
    text-align: center;
}

.brand-block-cta.top-0 {
    margin-top: 0px;
}

.y-position-bottom {
    bottom: 0px;
}

.y-position-top {
    top: 0px;
}

.x-position-left {
    left: 0px;
}

.x-position-right {
    right: 0px;
}

.brand-block-product-link-cta.bottom-right-text-centered {
    width: 48%;
}

.brand-block-product-copy {
    transition: all 400ms ease;
    opacity: 1;
}

.bottom-left-product-info {
    padding-left: 0px;
}

.brand-block-cta {
    transition: all 400ms ease;
    opacity: 0;
}

.brand-block-product-copy.bottom-left-product-info + .brand-block-cta {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 2.5rem;
}

.brand-block-product-copy .brand-block-title {
    font-size: 1.4rem;
    letter-spacing: 0.1rem;
    font-weight: 300;
    text-transform: uppercase;
    overflow: hidden;
    text-overflow: ellipsis;
}

.brand-block-price {
    line-height: 1;
    font-size: 2.7rem;
    letter-spacing: -0.1rem;
    padding-top: 3px;
}

.brand-block-product-copy .price-item.price-item--compare-at {
    position: relative;
}

.brand-block-product-copy .price-item.price-item--compare-at:after {
    content: '';
    width: calc(100% - 6px);
    height: 1px;
    background-color: currentColor;
    display: block;
    position: absolute;
    top: 57%;
    z-index: 2;
}

.brand-block-product-copy .price-item.price-item--compare-at + .price-item {
    font-weight: bold;
    color: rgba(243, 49, 36, 1);
    margin-left: 0.3rem;
}

@media (min-width: 991px) {
    .card-brand-block .brand-block-cta span:after {
        display: none;
    }

    .card-brand-block:hover .brand-block-product-copy {
        opacity: 0;
    }

    .card-brand-block:hover .brand-block-cta {
        opacity: 1;
    }

    .brand-block-slide .brand-block-cta,
    .card-brand-block.brand-block-1-columns .brand-block-cta {
        width: 100%;
        background-color: transparent !important;
    }

    .brand-block-slide .brand-block-cta-text,
    .card-brand-block.brand-block-1-columns .brand-block-cta-text {
        padding: 14.7px 40px !important;
        font-size: 1.1rem;
        border: 1px solid white;
        color: white;
        width: calc(100% - 40px);
    }

    .brand-block-slide .brand-block-cta-text:hover,
    .card-brand-block.brand-block-1-columns .brand-block-cta-text:hover {
        background-color: var(--color-add-to-bag-sale);
        color: white !important;
        border-color: var(--color-add-to-bag-sale);
    }
}

.brand-block-slide .brand-block-cta-text,
.card-brand-block.brand-block-1-columns .brand-block-cta-text {
    padding: 12px 40px;
    font-size: 1.1rem;
}

@media (max-width: 990px) {
    .brand-block-copy.brand-block-product-copy {
        bottom: 14px;
        left: 14px;
    }

    .brand-block-price {
        line-height: 1;
        font-size: 1.8rem;
        letter-spacing: -0.02rem;
        padding-top: 0;
    }

    .brand-block-product-copy .price-item.price-item {
        font-size: 1.6rem;
    }
    .brand-block-product-copy .price-item.price-item--compare-at + .price-item {
        margin-left: 0.15rem;
        letter-spacing: -0.05rem;
        font-size: 1.5rem;
        position: relative;
        top: -0.03rem;
    }
    .brand-block-product-copy .brand-block-title {
        font-size: 1rem;
        letter-spacing: 0.13rem;
    }

    .brand-block-1-columns .brand-block-slide:not(.product-slide) .card__media img {
        min-height: 310px !important;
    }
}

.pre-shop-area .icon-numbers {
    opacity: 1;
    left: 0px;
    opacity: 1;
    left: 0px;
    bottom: 0px;
    font-size: 1px;
}

@media (max-width: 990px) {
    span.top-number.icon-numbers svg {
        max-height: 70px;
    }
}

.in-cart .top-number {
    opacity: 0;
}

@media (min-width: 991px) {
    .sale-area #product-grid:not(:has(.product--block-47)) .product--block-46,
    .sale-area #product-grid:not(:has(.product--block-93)) .product--block-92,
    .sale-area #product-grid:not(:has(.product--block-139)) .product--block-136,
    .sale-area #product-grid:not(:has(.product--block-139)) .product--block-137,
    .sale-area #product-grid:not(:has(.product--block-139)) .product--block-138 {
        display: none;
    }
}

@media (max-width: 990px) {
    .sale-area #product-grid:not(:has(.product--block-47)) .editorial--block-7,
    .sale-area #product-grid:not(:has(.product--block-93)) .product--block-92,
    .sale-area #product-grid:not(:has(.product--block-139)) .product--block-138 {
        display: none;
    }
}

.template-name-collection.sale-area .icon-numbers {
    opacity: 1;
    left: 0px;
    opacity: 1;
    left: 0px;
    bottom: 0px;
    font-size: 1px;
}

@media (min-width: 991px) {
    .template-name-collection.sale-area .plp-product-standard:hover .icon-numbers {
        opacity: 0;
    }
}

@media (max-width: 990px) {
    .template-name-collection span.top-number.icon-numbers svg {
        max-height: 70px;
    }

    picture.brand-block-hover-image {
        display: none !important;
    }

    span.brand-block-cta-text {
        padding-left: 10px !important;
        padding-right: 10px !important;
        width: 100%;
    }

    .brand-block-cta span.krw--mobile-only {
        padding: 0px;
    }

    .brand-block-product-copy.bottom-left-product-info + .brand-block-cta {
        left: 0px;
        transform: translateX(0);
        width: 100%;
        bottom: 0px;
    }

    span.brand-block-cta-text-mobile {
        width: 100%;
        display: block;
    }

    span.brand-block-cta-text {
        font-size: 0px !important;
    }

    .brand-block-cta img {
        max-height: 7px;
        position: relative;
        top: -1px;
        margin: 0 auto;
    }
    .brand-block-cta-text-mobile {
        width: 100%;
        display: block;
    }

    span.brand-block-cta-text:after {
        display: none;
    }

    span.brand-block-cta-text .krw--mobile-only:after {
        display: none;
    }

    .brand-block-cta-text-mobile {
        border: 1px solid #fff;
        padding: 8.5px 20px !important;
        width: 100%;
    }

    .brand-block-cta.brand-block-cta-show-mobile {
        opacity: 1;
    }

    .brand-block-slide .brand-block-cta-text,
    .card-brand-block.brand-block-1-columns .brand-block-cta-text {
        padding-bottom: 9px;
    }
}

.in-cart .top-number.icon-numbers {
    opacity: 0 !important;
}

picture.brand-block-hover-image {
    transition: all 400ms ease;
    opacity: 0;
}

@media (min-width: 991px) {
    .card-brand-block:hover picture.brand-block-hover-image {
        opacity: 1;
        transition: all 400ms ease;
    }

    .brand-block-1-columns.carousel-overflow ul.brand-block-carousel,
    .brand-block-1-columns ul.brand-block-carousel:not(.slick-slider) li,
    .card-brand-block.carousel-overflow.brand-block-1-columns .card__inner,
    .card-brand-block.brand-block-1-columns .card__inner {
        height: 100%;
    }

    .card-brand-block.brand-block-1-columns.carousel-overflow .plp-grid-items-wrapper,
    .card-brand-block.brand-block-1-columns .plp-grid-items-wrapper {
        height: calc(100% - 20px);
    }

    .card-brand-block.brand-block-1-columns.carousel-overflow .card__inner {
        position: absolute;
    }

    .card-brand-block.brand-block-1-columns.carousel-overflow
        ul.brand-block-carousel
        .slick-list,
    ul.brand-block-carousel .slick-track {
        height: 100%;
    }

    .card-brand-block.brand-block-1-columns.carousel-overflow .brand-block-carousel .slick-dots {
        bottom: 20px;
    }
}

ul.brand-block-carousel:has(.slick-active[data-carousel-dots-color='#000000'])
    .slick-dots
    button:before {
    border-color: #000;
    color: black;
}

ul.brand-block-carousel:has(.slick-active[data-carousel-dots-color='#000000'])
    .slick-dots
    .slick-active
    button:before {
    background-color: #000;
}

ul.brand-block-carousel:has(.brand-block-cta):has(.slick-dots:not(:only-child))
    .brand-block-product-copy.bottom-left-product-info
    + .brand-block-cta {
    bottom: 3.7rem;
}

.brand-block-copy .metafield-rich_text_field h2 {
    margin: 0;
}

@media (max-width: 990px) {
    ul.brand-block-carousel,
    ul.brand-block-carousel:not(.slick-slider) li,
    .card-brand-block.carousel-overflow .card__inner {
        height: 100%;
    }

    .card-brand-block.carousel-overflow .plp-grid-items-wrapper {
        height: calc(100% - 12px);
    }

    .card-brand-block.carousel-overflow .card__inner {
        position: absolute;
    }

    .card-brand-block.carousel-overflow .plp-grid-items-wrapper img,
    .brand-block-1-columns .brand-block-slide:not(.product-slide) .card__media img {
        min-height: 100% !important;
    }

    .card-brand-block.carousel-overflow:last-child {
        display: none;
    }

    ul.brand-block-carousel .slick-list,
    ul.brand-block-carousel .slick-track {
        height: 100%;
    }

    .card-brand-block.carousel-overflow .media {
        position: absolute !important;
    }

    .brand-block-grid-collection-copy.position-relative {
        position: relative;
        text-align: left;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        padding-top: 1rem;
    }

    .brand-block-grid-collection-copy p:empty {
        display: none;
    }

    .brand-block-grid-collection-copy.position-relative p {
        max-width: 90%;
        line-height: 1.42;
        padding-bottom: 15px;
    }

    .krw--overlay-product-content + div .card__content {
        position: absolute;
        padding-left: 10px;
        padding-right: 10px;
        z-index: 4;
        bottom: 7px;
    }

    .krw--overlay-product-content + div .plp--atb {
        display: none !important;
    }

    li.full-brand-block.grid__item.plp-product-grid-item.card-brand-block
        .card__inner.color-background-2.gradient.ratio {
        --ratio-percent: 143% !important;
    }

    .brand-block-grid-collection-products.brand-block-products-carousel::-webkit-scrollbar {
        display: none;
    }

    .brand-block-grid-collection-copy.position-relative.krw--overlay-product-content.brand-block-no-products
        p {
        padding-bottom: 0px;
    }

    .template-name-collection .brand-block-carousel .slick-dots {
        bottom: 8px;
    }

    ul.brand-block-carousel:has(.brand-block-cta):has(.slick-dots)
        .brand-block-product-copy.bottom-left-product-info
        + .brand-block-cta {
        bottom: 2rem;
    }

    .template-krewe-x-greyson .brand-block-grid-collection-copy.brand-block-no-products {
        text-align: center;
    }
}

body:not(.template-index) ul.slick-dots:has(:only-child) {
    display: none;
}

.template-gift-finder main span.top-number {
    font-family: PPEditorial;
    font-weight: 600;
    color: #b9222a;
    opacity: 0.5;
    font-size: 13.5rem;
}

@media (max-width: 990px) {
    .template-gift-finder main span.top-number {
        font-size: 7.5rem;
    }

    li.grid__item.plp-product-grid-item.carousel-overflow.card-brand-block.brand-block-1-columns,
    li.card-brand-block.brand-block-1-columns {
        grid-column: 1;
    }

    .brand-block-grid-collection-copy.position-relative.brand-block-no-products {
        text-align: center;
    }
}

body[data-sort-by='price-ascending'] main #product-grid .plp-product-standard {
    order: 0;
}

body[data-sort-by='price-ascending']
    main
    #product-grid
    .plp-product-standard[data-family-handle='st-louis-kids'] {
    order: 1;
}

@media (min-width: 991px) {
    .grid__item.card-brand-block.brand-block-3-columns {
        grid-row: span 2 !important;
        grid-column: span 3 !important;
        padding: 0px !important;
        height: calc(100% - 63px);
    }

    .grid__item.card-brand-block.brand-block-number-2.brand-block-3-columns,
    .grid__item.card-brand-block.brand-block-number-4.brand-block-3-columns {
        grid-column: 2 / span 3 !important;
    }

    .brand-block-3-columns.card-brand-block .card__inner.color-background-2.gradient.ratio {
        --ratio-percent: 100% !important;
        height: 100%;
    }

    .brand-block-3-columns .plp-grid-items-wrapper,
    .brand-block-3-columns .card-active {
        display: flex;
        flex-direction: column;
        height: 100%;
    }
}

.bottom-left-product-info:has(p) {
    white-space: normal;
}

.brand-block-copy h3 {
    font-weight: bold;
    letter-spacing: 0.16rem;
    margin: 0;
}

.brand-block-copy p {
    margin: 0;
    font-size: 1.4rem;
    letter-spacing: 0.03rem;
}

.brand-block-copy,
.brand-block-copy p,
.brand-block-copy h3 {
    transform: translateZ(0);
}

.brand-block-copy-label {
    position: absolute;
    font-size: 1.1rem;
    letter-spacing: 0.09rem;
    font-weight: 300;
    text-transform: uppercase;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0.5rem 0.7rem;
    transform: translateZ(0);
    opacity: var(--card-label-opacity);
}

.brand-block-cta:has(.brand-block-cta-text + .brand-block-cta-text) {
    flex-direction: column;
    gap: 1rem;
}

@media (max-width: 990px) {
    .brand-block-copy h3 {
        font-size: 1.3rem;
        line-height: 1.2;
        padding-bottom: 0.2rem;
    }

    .brand-block-copy p {
        font-size: 1.15rem;
        letter-spacing: 0.03rem;
    }

    .brand-block-copy-label {
        font-size: 0.8rem;
    }

    .brand-block-copy-label {
        padding: 0.5rem 0.7rem;
    }

    .card-brand-block:not(:has(.brand-block-copy-label + .brand-block-copy-label))
        .brand-block-copy-label {
        width: 100%;
        text-align: left;
    }
}

.absolute-link {
    position: absolute;
    width: 100%;
    height: 100%;
}

.z-1 {
    z-index: 1;
}

.z-2 {
    z-index: 2;
}

.brand-block-cta-text a:after {
    content: '';
    position: absolute;
    left: 0px;
    top: 0;
    width: 100%;
    height: 100%;
}

.canvas-wrapper {
    position: absolute;
    width: calc(100% - 60px);
    height: calc(100% - 265px);
    z-index: 4;
}

.draw-controls {
    position: absolute;
    top: 75px;
    left: 45px;
    z-index: 5;
}

button.draw-btn {
    background-color: #c72e2e;
    color: white;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 1.1rem;
    padding-left: 10px;
    padding-right: 10px;
    line-height: 26px;
    cursor: pointer;
}

.draw-controls {
    display: flex;
    gap: 1rem;
}

@media (max-width: 990px) {
    button#saveBtn {
        position: absolute;
        top: 2rem;
        left: 2rem;
    }
    .canvas-wrapper {
        position: absolute;
        width: 100%;
        height: 100%;
        z-index: 4;
    }
}

.grid__item.card-brand-block.brand-block-4-columns {
    grid-row: span 1;
    grid-column: span 4;
    padding: 0px 0 60px !important;
}

.grid__item.card-brand-block.brand-block-4-columns .ratio::before {
    padding-bottom: 33.81% !important;
}

.grid__item.card-brand-block.brand-block-4-columns .card__media {
    width: 100%;
}

.card-brand-block .bb-content h2 {
    font-size: var(--bb-heading-font-size);
    font-weight: var(--bb-font-weight);
    color: var(--bb-text-color);
    margin: 0;
    line-height: 1;
    letter-spacing: var(--bb--heading-letter-spacing);
}

.card-brand-block .bb-content p {
    font-size: var(--bb-copy-font-size);
    font-weight: var(--bb-font-weight);
    color: var(--bb-text-color);
    margin: 0;
    line-height: 1.42;
    max-width: 570px;
    text-transform: uppercase;
}

.bb-content {
    padding-left: 10rem;
    padding-right: 12rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.template-collection-mardi-gras-2025 .brand-block-copy {
    text-align: right;
    left: 0px;
    padding-left: 2rem;
    padding-right: 2rem;
    bottom: 2rem;
}

.template-collection-mardi-gras-2025 .brand-block-copy h3 {
    font-size: 7rem;
    letter-spacing: -4px;
    line-height: 1;
}

@media (min-width: 991px) {
    .content-position-center-center {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .content-position-center-right {
        top: 50%;
        right: 0px;
        transform: translate(0%, -50%);
    }

    .content-position-center-left {
        top: 50%;
        left: 0px;
        transform: translate(0%, -50%);
    }

    .content-text-align-center {
        text-align: center;
    }

    .template-collection-mardi-gras-2025:has(.full-width-brand-block) .brand-block-number-1 {
        grid-row: span 1 / 6 !important;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-2 {
        grid-row: 7;
        grid-column: 1 !important;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-3 {
        grid-row: 9;
        grid-column: 4 !important;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-4 {
        grid-row: 11;
        grid-column: 1 !important;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-5 {
        grid-row: 13;
        grid-column: 4 !important;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-6 {
        grid-row: 15;
        grid-column: 1 !important;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-7 {
        grid-row: 17;
        grid-column: 4 !important;
    }

    .full-width-brand-block.grid__item.card-brand-block.brand-block-4-columns .ratio::before {
        padding-bottom: 0 !important;
    }

    .full-width-brand-block .card__media,
    .full-width-brand-block .media,
    .full-width-brand-block picture {
        position: relative !important;
    }

    .template-collection-mardi-gras-2025
        main
        .brand-block-number-1 {
        grid-row: 4;
        grid-column: 1 !important;
    }

    .template-collection-mardi-gras-2025
        main
        .brand-block-number-2 {
        grid-row: 6;
        grid-column: 4 !important;
    }

    .template-collection-mardi-gras-2025
        main
        .brand-block-number-3 {
        grid-row: 8;
        grid-column: 1 !important;
    }

    .template-collection-mardi-gras-2025
        main
        .brand-block-number-4 {
        grid-row: 10;
        grid-column: 4 !important;
    }

    .template-collection-mardi-gras-2025
        main
        .brand-block-number-5 {
        grid-row: 12;
        grid-column: 1 !important;
    }
}

@media (max-width: 990px) {
    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-1 {
        grid-row: span 1 / 8 !important;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-2 {
        grid-row: 11;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-3 {
        grid-row: 15;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-4 {
        grid-row: 19;
    }

    .template-collection-mardi-gras-2025
        main:has(.full-width-brand-block)
        .brand-block-number-5 {
        grid-row: 23;
    }

    .template-collection-mardi-gras-2025
        main:not(:has(.full-width-brand-block))
        .brand-block-number-1 {
        grid-row: 7;
    }

    .template-collection-mardi-gras-2025
        main:not(:has(.full-width-brand-block))
        .brand-block-number-2 {
        grid-row: 11;
    }

    .template-collection-mardi-gras-2025
        main:not(:has(.full-width-brand-block))
        .brand-block-number-3 {
        grid-row: 15;
    }

    .template-collection-mardi-gras-2025
        main:not(:has(.full-width-brand-block))
        .brand-block-number-4 {
        grid-row: 19;
    }

    .template-collection-mardi-gras-2025
        main:not(:has(.full-width-brand-block))
        .brand-block-number-5 {
        grid-row: 23;
    }

    .bb-content {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        padding-bottom: 2.5rem;
        width: 100%;
    }

    .content-position-mobile-center-center {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .content-position-mobile-center-right {
        top: 50%;
        right: 0px;
        transform: translate(0%, -50%);
    }

    .content-position-mobile-center-left {
        top: 50%;
        left: 0px;
        transform: translate(0%, -50%);
    }

    .content-position-mobile-bottom-center {
        bottom: 0;
        left: 50%;
        transform: translate(-50%, 0%);
    }

    .content-position-mobile-center-center {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .content-position-mobile-bottom-left {
        top: 50%;
        left: 0px;
        transform: translate(0%, -50%);
    }

    .content-text-align-mobile-center {
        text-align: center;
    }

    .bb-content p {
        padding-top: 0.7rem;
    }

    .template-collection-mardi-gras-2025 .brand-block-copy h3 {
        font-size: 4.7rem;
        letter-spacing: -4px;
        text-align: right;
        line-height: 1;
        text-transform: lowercase !important;
    }

    .template-collection-mardi-gras-2025 .brand-block-copy {
        text-align: right;
        left: 0px;
        padding-left: 1.2rem;
        padding-right: 1.2rem;
        bottom: 0.2rem;
    }

    .brand-block-1-columns .plp-grid-items-wrapper {
        display: flex;
        height: calc(100% - 12px);
    }

    .brand-block-1-columns .card__inner,
    .brand-block-1-columns .media {
        height: 100%;
    }
}

.bb-content-caption {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.confetti-on-hover
    button.addToCart.btn.btn-solid.plp--atb-trigger.js-product-add-to-cart-plp:after {
    background-image: url(Desktop-Mardi-CTA.png);
    background-size: cover;
    background-position: center;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 1;
    background-repeat: no-repeat;
    pointer-events: none;
    transition: opacity 0.4s ease;
    z-index: -2;
    display: block;
}

.confetti-on-hover
    button.addToCart.btn.btn-solid.plp--atb-trigger.js-product-add-to-cart-plp:before {
    background-color: #ad060f !important;
    background-size: cover;
    background-position: center;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0;
    background-repeat: no-repeat;
    pointer-events: none;
    transition: opacity 0.4s ease;
    z-index: -1;
    display: block;
}

.confetti-on-hover button.btn.btn-solid.plp--atb-trigger:hover:hover {
    background-color: transparent !important;
}

.confetti-on-hover .addToCart:hover:after {
    opacity: 0.6;
}

.confetti-on-hover
    button.addToCart.btn.btn-solid.plp--atb-trigger.js-product-add-to-cart-plp:hover:before {
    opacity: 0.6;
}

.confetti-on-hover .addToCart {
    color: #fff !important;
    border: none !important;
    position: relative;
}

@media (max-width: 990px) {
    .confetti-on-hover button.addToCart:after {
        background-image: url(Desktop-Mardi-CTA.png);
        background-size: cover;
        background-position: center;
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        opacity: 1;
        background-repeat: no-repeat;
        pointer-events: none;
        transition: opacity 0.4s ease;
        z-index: -2;
        display: block;
    }

    .confetti-on-hover button.addToCart:before {
        background-color: #ad060f !important;
        background-size: cover;
        background-position: center;
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        opacity: 0;
        background-repeat: no-repeat;
        pointer-events: none;
        transition: opacity 0.4s ease;
        z-index: -1;
        display: block;
    }

    .confetti-on-hover button.addToCart:hover:hover {
        background-color: transparent !important;
    }

    .confetti-on-hover .addToCart:hover:after {
        opacity: 0.6;
    }

    .confetti-on-hover
        button.addToCart.btn.btn-solid.plp--atb-trigger.js-product-add-to-cart-plp:hover:before {
        opacity: 0.6;
    }

    .confetti-on-hover .addToCart {
        color: #fff !important;
        border: none !important;
        position: relative;
    }
}

.collection-grid__products[data-dynamic-container='true'] .card-brand-block .card-wrapper {
    container-type: inline-size;
    container-name: card;
}

.collection-grid__products[data-dynamic-container='true'] li.card-brand-block {
    width: 100%;
}

.collection-grid__products[data-dynamic-container='true'] #product-grid li.grid__item {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 0px !important;
}

.collection-grid__products[data-dynamic-container='true'] {
    padding: 0;
}

.collection-grid__products[data-dynamic-container='true'] #product-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    max-width: 560px;
    margin-left: 0;
    gap: 1.8rem;
    padding: 0 !important;
}

.collection-grid__products[data-dynamic-container='true'] .card-brand-block {
    grid-column: span 2 !important;
}

@media (min-width: 991px) {
    .collection-grid__products[data-dynamic-container='true']
        .card-brand-block
        .card__inner.color-background-2.gradient.ratio {
        --ratio-percent: 125% !important;
    }
}

@container card (max-width: 560px) {
    .mobile-source {
        display: block !important;
    }
    .desktop-source {
        display: none !important;
    }
}

@container card (min-width: 561px) {
    .mobile-source {
        display: none !important;
    }
    .desktop-source {
        display: block !important;
    }
}

.mobile-source {
    display: none;
}

.desktop-source {
    display: block;
}

span.best-seller-tag.tag-white-lotus svg {
    width: 1.7rem;
    height: 1.4rem;
    top: -.075rem;
}

@media (max-width: 990px) {
    .featured-collection-block-wrapper {
        width: 100%;
    }

    .collection-grid__products[data-dynamic-container='true'] .brand-block-number-2 {
        grid-row: 7 !important;
    }

    .collection-grid__products[data-dynamic-container='true'] .brand-block-number-3 {
        grid-row: 11 !important;
    }

    .collection-grid__products[data-dynamic-container='true'] .brand-block-number-4 {
        grid-row: 15 !important;
    }

    .collection-grid__products[data-dynamic-container='true'] .brand-block-number-5 {
        grid-row: 19 !important;
    }

    span.best-seller-tag.tag-white-lotus svg {
        width: 1.4rem;
        height: 0.9rem;
        top: -.06rem !important;
        margin-left: 0.25rem !important;
    }
}

@media (min-width: 991px) {
    .collection-grid__products[data-dynamic-container='true'] li.card-brand-block {
        display: none !important;
    }
}

