:root {
    --sf-font-default: 'Sohne', Verdana, Arial, sans-serif;
    --sf-font-sohne: 'Soehne-Buch', Verdana, Arial, sans-serif;
    --sf-font-sohne-md: 'Soehne-Leicht', Verdana, Arial, sans-serif;
    --sf-font-sohne-sb: var(--sf-font-sohne-md);
    --sf-font-sohne-b: 'Soehne-Kraftig', Verdana, Arial, sans-serif;
    --font-family-avh: 'Avenir LT W01 85 Heavy', Helvetica, Arial, sans-serif;
    --font-family-avr: 'Avenir LT W01 55 Roman', Helvetica, Arial, sans-serif;
    --text-color: #58595b;
    --text-color-grey: #2d3137;
    --text-color-grey2: #757579;
    --text-color-default: #241F16;
    --text-color-blue: #5b7491;
    --outrageous-orange: #f05323;
    --fog-light: #f5f6f8;
    --deep-carrot: #d74012;
    --dark-carrot: #a9320e;
    --tp-blue: #00829b;
    --tp-dark-blue: #005666;
    --tp-active: #006a80;
    --ignite: #bf3602;
    --color-teal: #1aaeba;
    --color-red: #c00;
    --color-blue: #3d4347;
    --color-blue2: #0065b8;
    --color-green: #318619;
    --border-radius: 5px;
    --font-size: 0.857rem;
    /* 12px */
    --font-size-tiny: 0.85rem;
    /* 11px */
    --font-size-small: 0.857rem;
    /* 12px */
    --font-size-default: 1rem;
    /* 14px */
    --font-size-medium: 1.143rem;
    /* 16px */
    --font-size-subtitle: 1.286rem;
    /* 18px */
    --font-size-headline-mid: 1.429rem;
    /* 20px */
    --font-size-headline-sec: 1.325rem;
    /* 22px */
    --font-size-headline-main: 1.77rem;
    /* 24px */
    --font-size-headline-big: 2.29rem;
    /* 32px */
    --main-padding: 0 14px;
    --promo-height: 500px;
    --mid-promo-height: 300px;
    --other-prods-size: 300px;
    --other-prods-header: 28px;
    --other-prods-subheader: 21px;
    --cta-box-position: 35px;
    --page-margin: 24px;
    --color-silver: #ccc;
    --color-black: #212121;
    --color-white: #ffffff;
    --gray-dark: #c6c7c9;
    --gray-medium: #585b58;
    --red-deep: #920012;
    --color-brown: #7c4c35;
    --brown-light: #df9b74;
    --color-golden: #785f25;
    --golden-light: #edc151;
    --gray-deep: #7e7e7e;
    --gray-light: #eee;
    --gray-red: #e80112;
    --gray-mid: #c9cacb;
    --white-smoke: #f5f5f5;
    --dark-charcoal: #333;
    --gray-solitude: #ebedf0;
    --high-column-gap: 1.5em;
    --mid-column-gap: 1em;
    --low-column-gap: 0.75em;
    --five-column-width: calc(20% - var(--high-column-gap));
    --four-column-width: calc(25% - var(--high-column-gap));
    --three-column-width: calc(33.3% - var(--high-column-gap));
    --two--column-width: calc(50% - var(--mid-column-gap));
    --one--column-width: calc(100% - var(--low-column-gap));
    --checkbox-color: #6a707c;
    --light-gray-background-color: #F2F2F0;
}

@font-face {
    font-family: 'Soehne-Leicht';
    src: url('https://cdn.staticsfly.com/i/cmsFonts/sohne/soehne-leicht.woff2') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: 'Soehne-Buch';
    src: url('https://cdn.staticsfly.com/i/cmsFonts/sohne/soehne-buch.woff2') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: 'Soehne-Kraftig';
    src: url('https://cdn.staticsfly.com/i/cmsFonts/sohne/soehne-kraftig.woff2') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: 'HB-Hue';
    src: url('https://shutterfly.widen.net/content/lypiej4d76/original/HBHuev1.22-Regular.woff2') format('woff2');
    font-display: swap;
}

html {
    scroll-behavior: smooth;
}

/* CSS hack to adjust Firefox */
@-moz-document url-prefix() {
    html {
        scroll-behavior: auto;
    }
}

body.store-fe {
    margin: 0;
    font-family: var(--sf-font-sohne-md);
    color: var(--text-color);
    font-size: var(--font-size-default);
    width: 100%;
    overflow-x: hidden;
}

.body-wrapper {
    max-width: 1600px;
    margin: 0 auto;
}

#root {
    min-height: 100vh;
}

#root:not(:has(#reviews-snapshot #pr-review-snapshot)) {
    min-height: 0;
}

.store-front a.store-button {
    font-family: var(--sf-font-sohne-b);
    font-size: 16px;
    line-height: 21px;
    letter-spacing: 0;
    font-weight: 500;
    border-radius: 24px;
    text-decoration: none;
    text-transform: capitalize;
    padding: 9.5px 20px;
    border: 1px solid var(--text-color);
    color: var(--text-color);
    user-select: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
}

.store-front {
    padding-bottom: 15px;
    margin: 0 25px;
}

.store-front a.store-button.primary.SFLY {
    color: #fff;
    background: var(--deep-carrot);
    border: 1px solid var(--deep-carrot);
}

.store-front a.store-button.primary.TP {
    color: #fff;
    background: var(--tp-blue);
    border: 1px solid var(--tp-blue);
}

.store-front a.store-button.SFLY:not(.disabled):hover {
    text-decoration: none !important;
    color: var(--deep-carrot);
    border: 1px solid var(--deep-carrot);
}

.store-front a.store-button.TP:not(.disabled):hover {
    text-decoration: none;
    color: var(--tp-blue);
    border: 2px solid var(--tp-blue);
}

.store-front a.store-button.SFLY:not(.disabled):active {
    color: var(--ignite);
    border: 2px solid var(--ignite);
}

.store-front a.store-button.TP:not(.disabled):active {
    color: var(--tp-active);
    border: 2px solid var(--tp-active);
}

.store-front a.store-button.primary:not(.disabled):hover,
.store-front a.store-button.primary:not(.disabled):active {
    color: var(--color-white);
}

.store-front a.store-button.primary.SFLY:not(.disabled):hover {
    background: var(--dark-carrot);
    border: 1px solid var(--dark-carrot);
}

.store-front a.store-button.primary.TP:not(.disabled):hover {
    background: var(--tp-dark-blue);
    border: 1px solid var(--tp-dark-blue);
}

.store-front a.store-button.primary.SFLY:not(.disabled):active {
    background: var(--ignite);
    border: 1px solid var(--ignite);
}

.store-front a.store-button.primary.TP:not(.disabled):active {
    background: var(--tp-active);
    border: 1px solid var(--tp-active);
}

.store-front a.store-button.disabled {
    opacity: 0.3;
    cursor: default;
    pointer-events: none;
}

.store-front a.store-button.floating {
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.11),
        0 5px 15px 0 rgba(0, 0, 0, 0.08);
}

.store-front a {
    color: var(--color-blue);
    text-decoration: none;
}

.store-front a:hover {
    color: var(--color-blue);
}

div.spoonflower-text {
    font-family: var(--sf-font-sohne-md);
}

@media (min-width: 768px) {
    :root {
        --font-size: 0.875rem;
        --main-padding: 0;
    }
}

@media (max-width: 767px) {
    :root {
        --font-size: 0.875rem;
        --main-padding: 0;
    }

    .store-front {
        max-width: 767px;
    }
}

@media (max-width: 480px) {
    .store-front {
        margin: 0 12px;
    }
}

.focus-none *:focus {
    outline: none !important;
}

.focus-none *:not(.focus-exception):focus:after,
.focus-none *:focus .Icon:before {
    display: none;
}

.u-lock-scroll {
    overflow: hidden !important;
}

/*** Secondary Button ****/
.button.secondary,
a.secondary {
    background: var(--color-white);
    border: 1px solid var(--gray-medium);
    height: 36px;
    padding: 7px 16px;
    box-sizing: border-box;
    border-radius: 4px;
    color: var(--gray-medium);
    text-transform: uppercase;
    cursor: pointer;
}

.button.secondary:not(.disabled):hover,
a.secondary:not(.disabled):hover {
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2);
}

.button.secondary:not(.disabled):active,
a.secondary:not(.disabled):active {
    background: rgba(0, 0, 0, 0.1);
}

.button.disabled {
    opacity: 0.3;
    cursor: default;
}

.not-supported p {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    max-width: 730px;
    margin: 50px auto;
    line-height: 21px;
    font-size: 14px;
    font-family: var(--sf-font-sohne-md);
    color: var(--gray-medium);
    width: 90%;
}

.not-supported p img {
    margin-right: 10px;
}
.slick-list,.slick-slider,.slick-track{
    position:relative;
    display:block
}
.slick-loading .slick-slide,.slick-loading .slick-track{
    visibility:hidden
}
.slick-slider{
    box-sizing:border-box;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    -webkit-touch-callout:none;
    -khtml-user-select:none;
    -ms-touch-action:pan-y;
    touch-action:pan-y;
    -webkit-tap-highlight-color:transparent
}
.slick-list{
    overflow:hidden;
    margin:0;
    padding:0
}
.slick-list:focus{
    outline:0
}
.slick-list.dragging{
    cursor:pointer;
    cursor:hand
}
.slick-slider .slick-list,.slick-slider .slick-track{
    -webkit-transform:translate3d(0,0,0);
    -moz-transform:translate3d(0,0,0);
    -ms-transform:translate3d(0,0,0);
    -o-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0)
}
.slick-track{
    top:0;
    left:0
}
.slick-track:after,.slick-track:before{
    display:table;
    content:''
}
.slick-track:after{
    clear:both
}
.slick-slide{
    display:none;
    float:left;
    height:100%;
    min-height:1px
}
[dir=rtl] .slick-slide{
    float:right
}
.slick-slide img{
    display:block
}
.slick-slide.slick-loading img{
    display:none
}
.slick-slide.dragging img{
    pointer-events:none
}
.slick-initialized .slick-slide{
    display:block
}
.slick-vertical .slick-slide{
    display:block;
    height:auto;
    border:1px solid transparent
}
.slick-arrow.slick-hidden{
    display:none
}
.slick-dots,
.slick-next,
.slick-prev {
    position: absolute;
    display: block;
    padding: 0
}

.slick-dots li button:before,
.slick-next:before,
.slick-prev:before {
    font-family: var(--sf-font-sohne);
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.slick-next,
.slick-prev {
    font-size: 0;
    line-height: 0;
    top: 50%;
    width: 20px;
    height: 20px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: 0;
    background: 0 0
}

.slick-next:focus,
.slick-next:hover,
.slick-prev:focus,
.slick-prev:hover {
    color: transparent;
    outline: 0;
    background: 0 0
}

.slick-next:focus:before,
.slick-next:hover:before,
.slick-prev:focus:before,
.slick-prev:hover:before {
    opacity: 1
}

.slick-next.slick-disabled:before,
.slick-prev.slick-disabled:before {
    opacity: .25
}

.slick-next:before,
.slick-prev:before {
    font-size: 20px;
    line-height: 1;
    opacity: .75;
    color: #fff
}

.slick-prev {
    left: -25px
}

[dir=rtl] .slick-prev {
    right: -25px;
    left: auto
}

.slick-prev:before {
    content: '←'
}

.slick-next:before,
[dir=rtl] .slick-prev:before {
    content: '→'
}

.slick-next {
    right: -25px
}

[dir=rtl] .slick-next {
    right: auto;
    left: -25px
}

[dir=rtl] .slick-next:before {
    content: '←'
}

.slick-dotted.slick-slider {
    margin-bottom: 30px
}

.slick-dots {
    bottom: -25px;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    padding: 0;
    cursor: pointer;
    margin: 0;
}

.slick-dots li button {
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: 0;
    background: none;
    opacity: .25;
    margin: 0;
}

.slick-dots li button:focus,
.slick-dots li button:hover {
    outline: 0
}

.slick-dots li button:focus:before,
.slick-dots li button:hover:before {
    opacity: 1
}

.slick-dots li button:before {
    font-size: 32px;
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '•';
    text-align: center;
    color: #000;
    border-radius: 100%;
}

.slick-dots li.slick-active button {
    opacity: .75;
}
.ThumbnailPage {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
}

.ThumbnailPage .thumbnail-cta {
    display: flex;
    flex: 1 1 auto;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: left;
}

.ThumbnailPage .store-h2,
.ThumbnailPage .store-h1 {
    display: flex;
    flex: 1 1 100%;
    align-items: center;
    justify-content: left;
    line-height: 25px;
    font-family: var(--sf-font-sohne);
    font-size: var(--font-size-headline-main);
    font-weight: normal;
    margin: 14px 0;
    color: var(--text-color);
    letter-spacing: 0.5px;
    margin-right: 10px;
}

.ThumbnailPage .content-container {
    display: flex;
    flex-flow: column nowrap;
    padding: 0;
}

.ThumbnailPage .content-container .FilterBar.sticky-enabled {
    box-shadow: 0 6px 3px -3px rgb(0 0 0 / 30%);
}

.ThumbnailPage .content-container .FilterBar:not(.filter-enabled) {
    position: sticky;
    top: 0;
    z-index: 99;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    padding: 0;
}

.ThumbnailPage .content-container .FilterBar:not(.filter-enabled).sticky .TopBar {
    border-bottom: none;
}

.ThumbnailPage .content-container .FilterBar:not(.filter-enabled).sticky .SelectedFilters {
    border-top: 1px solid #dcdee1;
}

.ThumbnailPage .content-container .FilterBar:not(.filter-enabled).open {
    z-index: 100000;
}

@media screen and (max-width: 768px) {
    .ThumbnailPage .content-container .FilterBar {
        position: sticky;
        top: 0;
        z-index: 99;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        padding: 0;
    }

    .ThumbnailPage .content-container .FilterBar.sticky-enabled {
        border-bottom: none;
        box-shadow: 0 6px 3px -3px rgb(0 0 0 / 30%);
        z-index: 10000;
        margin-left: calc(-100vw / 2 + 100% / 2);
        margin-right: calc(-100vw / 2 + 100% / 2);
        padding: 0 25px;
        width: auto;
    }

    .ThumbnailPage .content-container .FilterBar.sticky-enabled .TopBar {
        border-bottom: none;
    }

    .ThumbnailPage .content-container .FilterBar.sticky-enabled .SelectedFilters {
        border-top: 1px solid #dcdee1;
    }

    .ThumbnailPage .content-container .FilterBar.open {
        z-index: 99999;
    }
}

.ThumbnailPage .dc-wrapper {
    display: flex;
    flex: 0 1 auto;
    width: 100%;
    align-items: center;
    flex-flow: column nowrap;
}

.ThumbnailPage .dc-wrapper img {
    height: auto;
    max-width: 100%;
}

.ThumbnailPage .thumbnail-grid {
    margin-top: 16px;
}

.ThumbnailPage .thumbnail-cta .results::before {
    content: '(';
}

.ThumbnailPage .thumbnail-cta .results::after {
    content: ')';
}

.ThumbnailPage .thumbnail-cta .results {
    font-size: 12px;
    margin-left: 5px;
}

.ThumbnailPage .thumbnail-cta .search-suggestions {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    flex-direction: column;
}

.ThumbnailPage .heading-section.search-suggestions-section {
    flex-direction: column;
    line-height: 24px;
}

.ThumbnailPage .heading-section.search-suggestions-section .favorite-section {
    justify-content: right;
}

.ThumbnailPage .suggestion-result {
    font-size: 16px;
}

.ThumbnailPage .suggestion-list a {
    color: inherit;
    margin-left: 3px;
    text-decoration: underline;
}

.ThumbnailPage .suggestion-list a:not(:last-child):after {
    content: ',';
}

@media screen and (max-width: 480px) {
    .ThumbnailPage .store-h1 {
        font-size: 20px;
    }

    .ThumbnailPage .store-h2 {
        font-size: var(--font-size-headline-sec);
    }

    .ThumbnailPage .content-container {
        display: flex;
        flex-flow: column nowrap;
        padding: 0;
    }

    .ThumbnailPage .content-container .FilterBar.sticky-enabled {
        top: 0;
        margin-left: calc(-50vw + 50%);
        margin-right: calc(-50vw + 50%);
        padding: 12px;
        width: 100%;
    }

    .bttEnabled.ThumbnailPage .content-container .FilterBar.sticky-enabled {
        margin-right: calc(-53.8vw + 50%);
        padding: 0px;
    }

    .ThumbnailPage .content-container .FilterBar.sticky-enabled .TopBar {
        width: calc(100% - 30px);
    }

    .ThumbnailPage .unfavorite-msg .fav-tooltip {
        margin-left: -120px;
    }

    .ThumbnailPage .unfavorite-msg .fav-tooltip .arrow.top:before {
        right: calc(50% - 60px);
    }
}

.no-results-container .page-title-container .page-title-text,
.fallback-results-container .page-title-container .page-title-text .info-text {
    font-size: 16px;
    font-weight: 700;
    color: #58595b;
    margin-bottom: 21px;
    line-height: 19px;
    margin-top: 20px;
    text-align: center;
}

.fallback-results-container .page-title-container {
    font-family: var(--sf-font-sohne);
    margin: 10px;
    text-align: center;
}

.fallback-results-container .page-title-container .page-title-text .sfly-suggestions {
    text-align: center;
    font-size: 15px;
    margin-top: 5px;
}

.fallback-results-container .heading-section {
    display: flex;
    justify-content: right;
}

.page-title-container .page-title-text .search-term {
    font-family: var(--sf-font-sohne-b);
    font-size: 16px;
    margin-left: 5px;
    margin-top: 0;
}

.no-results-container .no-results {
    display: flex;
    justify-content: center;
    flex-direction: column;
    font-size: 16px;
    line-height: 1.2;
    text-align: center;
    margin: 60px 0;
}

@media screen and (min-width: 992px) {
    .no-results-container .no-results {
        min-height: 280px;
        color: #58595b;
        border-top: 1px solid #c6c7c9;
        font-size: 20px;
    }

    .fallback-results-container .sfly-results {
        border-top: 1px solid #c6c7c9;
    }
}

@media screen and (max-width: 767px) {
    .heading-section .favorite-section {
        align-items: flex-start;
        margin-top: 14px;
    }

    .ThumbnailPage .heading-section .thumbnail-cta .store-h2 {
        display: inline;
        vertical-align: middle;
    }
}

.favorite-state .label {
    height: 30px;
    padding-top: 15px;
}

.unfavorite-msg .fav-tooltip {
    display: none;
    font-size: 13px;
    border: 1px solid var(--gray-dark);
    margin-left: -68px;
    margin-top: 10px;
    pointer-events: none;
    position: absolute;
    width: 150px;
    background-color: var(--color-white);
    padding: 10px;
    z-index: 10001;
    text-align: left;
    border-radius: 5px;
    font-family: var(--sf-font-sohne);
}

.unfavorite-msg .fav-tooltip strong {
    display: block;
    margin: 8px 0 4px;
    color: #cc5500;
    font-size: 14px;
}

.favorite-section:hover .fav-tooltip {
    display: block;
}

.heading .store-h1,
.heading .store-h2 {
    display: inline;
}

/* Strips margin from CMS banner */
.cms-banner .apclayout.vertical-stack-layout-row+.apclayout.vertical-stack-layout-row {
    margin: 0;
}

.use_my_photo_wrapper {
    margin: 16px 0;
}

.sort-by-for-desktop {
    display: none;
}

@media screen and (min-width: 768px) {
    .campaign-content {
        margin-bottom: 16px;
    }
}

@media screen and (min-width: 769px) {
    .thumbnail-inner-wrapper {
        display: grid;
        grid-column-gap: var(--high-column-gap);
        grid-row-gap: var(--high-column-gap) / 2;
        grid-template-columns: auto;
    }

    .sort-by-for-desktop {
        display: flex;
        border-left: solid 1px #dcdee1;
        padding-left: 15px;
        margin-left: 15px;
    }
}

@media screen and (min-width: 769px) and (max-width: 992px) {
    .thumbnail-inner-wrapper {
        grid-template-columns: 33.33% 66.66%;
    }
}

@media screen and (min-width: 992px) and (max-width: 1200px) {
    .thumbnail-inner-wrapper {
        grid-template-columns: 25% 75%;
    }
}

@media screen and (min-width: 1201px) {
    .thumbnail-inner-wrapper {
        grid-template-columns: 20% 80%;
    }
}

.thumbImage .slick-dots {
    bottom: -20px;
}

.thumbImage .slick-dots li button {
    display: none;
}

.thumbImage .slick-dots li {
    width: 5px;
    height: 5px;
    margin: 0 4px;
    background: #2f3237;
    border-radius: 100%;
    vertical-align: middle;
}

.thumbImage .slick-dots li.slick-active {
    background: none;
    border: solid 1px #2f3237;
}

@media (max-width: 991px) {
    .thumbnail.thumb-redesign .thumbImage .slick-dots {
        bottom: -12px;
    }

    .thumbnail.thumb-redesign .thumbImage .slick-dots li {
        width: 24px;
        height: 4px;
        margin: 0;
        background: #E1E1DF;
        border-radius: 0;
    }

    .thumbnail.thumb-redesign .thumbImage .slick-dots li:first-child {
        border-top-left-radius: 2px;
        border-bottom-left-radius: 2px;
    }

    .thumbnail.thumb-redesign .thumbImage .slick-dots li:last-child {
        border-top-right-radius: 2px;
        border-bottom-right-radius: 2px;
    }

    .thumbnail.thumb-redesign .thumbImage .slick-dots li.slick-active {
        background: #595855;
        border-radius: 2px;
        border: none;
    }

    /* Styles applied when more than 6 images are present ex: wedding photobooks */
    .thumbnail.thumb-redesign .thumbImage.sixPlus .slick-dots {
        display: flex !important;
        padding: 0;
        bottom: -8px;
    }

    .thumbnail.thumb-redesign .thumbImage.sixPlus .slick-dots li {
        width: auto;
        flex: 1;
        height: 4px;
        margin: 0;
        background: #E1E1DF;
        border-radius: 0;
    }

    .thumbnail.thumb-redesign .thumbImage.sixPlus .slick-dots li:first-child {
        border-top-left-radius: 2px;
        border-bottom-left-radius: 2px;
    }

    .thumbnail.thumb-redesign .thumbImage.sixPlus .slick-dots li:last-child {
        border-top-right-radius: 2px;
        border-bottom-right-radius: 2px;
    }

    .thumbnail.thumb-redesign .thumbImage.sixPlus .slick-dots li.slick-active {
        background: #595855;
        border-radius: 2px;
        border: none;
    }
}

.fragmentDiv:not(:has(div)) {
    position: relative;
    background-color: #ebebeb;
}

.fragmentDiv:not(:has(div))::after {
    display: block;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top,
            right top, from(transparent),
            color-stop(rgba(255, 255, 255, 0.2)),
            to(transparent));

    background: linear-gradient(90deg, #ebebeb, #f5f5f5, #ebebeb);

    /* Adding animation */
    animation: loadingFragmentSkeleton 0.8s infinite;
}

/* Loading Animation */
@keyframes loadingFragmentSkeleton {
    100% {
        transform: translateX(100%);
    }
}

/* override for in-grid marketing to make it align to top and crop the bottom of images. */
DIV#thumbnailGrid .InGridMarketingTileLink.imgBased DIV.InGridMarketingTile {
    background-position: top;
}
.pagination {
    display: flex;
    justify-content: center;
    padding: 4% 0;
    margin: auto;
    -webkit-appearance: none;
}

.pagination svg {
    pointer-events: none;
}

.pagination .pageNumber {
    margin: 1px 0;
    display: flex;
    align-items: center;
}

.pagination .page,
.pagination .pagination.favorites li.page>a {
    font-family: var(--sf-font-sohne);
    padding: 9px 13px;
    margin: 5px;
    display: inline-block;
    text-decoration: none;
    text-align: center;
    background: transparent;
    cursor: pointer;
    -webkit-appearance: none;
    border-radius: 6px;
    border: 1px solid transparent;
    position: relative;
    color: var(--text-color);
}

.pagination .page:focus-visible {
    border: 1px solid var(--outrageous-orange);
    color: var(--text-color);
}

.pagination .page:active,
.pagination .page a:active {
    background: rgba(0, 0, 0, 0.1) !important;
    border-radius: 3px;
    color: var(--text-color);
}

.pagination .page:focus-visible,
.pagination .page a:focus-visible {
    outline: none !important;
}

.pagination .page:hover {
    color: var(--text-color);
}

.pagination .page.selected::after,
.pagination .page:hover::after,
.pagination .page:active::before,
.pagination .page:focus::before {
    content: '';
    position: absolute;
    width: 16px;
    height: 2px;
    left: calc(50% - 8px);
    bottom: 1px;
    background-color: var(--text-color);
}

.pagination .redirectPage {
    display: inline-block;
    position: relative;
}

.pagination .redirectPage .openRedirect {
    font-family: var(--sf-font-sohne);
    padding: 6px 10px;
    display: inline-block;
    text-decoration: none;
    text-align: center;
    background: transparent;
    cursor: pointer;
    -webkit-appearance: none;
    border-radius: 6px;
    border: 1px solid var(--text-color);
    color: var(--text-color);
}

.pagination .redirectPage .openRedirect:hover,
.pagination .redirectPage .openRedirect:active {
    box-shadow: 0 0 0 1px var(--text-color);
}

.pagination .redirectPage .openRedirect:focus-visible:not(:active) {
    box-shadow: 0 0 0 1px white, 0 0 0 2px var(--outrageous-orange);
    outline: none;
}

.pagination .redirectPage a:active {
    background: rgba(0, 0, 0, 0.1) !important;
}

.pagination .redirectPage .redirectPagePopUp {
    font-size: 13px;
    border: 1px solid var(--gray-dark);
    width: 80px;
    bottom: 130%;
    left: 0;
    margin-left: -35px;
    pointer-events: none;
    position: absolute;
    background-color: var(--color-white);
    padding: 10px;
    z-index: 49;
    text-align: left;
    border-radius: 5px;
    font-family: var(--sf-font-sohne);
    box-shadow: 0 0 5px 3px var(--gray-light);
}

.pagination .redirectPage .redirectPagePopUp::after {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    left: 50%;
    transform: translate(-50%, 50%) rotate(45deg);
    background-color: white;
    box-shadow: 1px 1px var(--gray-dark);
}

.pagination .redirectPage .redirectPagePopUp .redirectPageInput {
    position: relative;
}

.pagination .redirectPage .redirectPagePopUp .redirectPageInput:focus {
    box-shadow: 0 0 0 1px var(--outrageous-orange);
}

.pagination .redirectPage .redirectPagePopUp .redirectPageInput .redirectPageInputBox {
    margin-left: 7px;
    width: 30px;
    height: 25px;
    pointer-events: auto;
    font-size: 11px;
    font-family: var(--sf-font-sohne);
    border-radius: 2px;
    border: 1px solid var(--text-color);
    color: var(--text-color);
    position: relative;
    text-align: center;
}

.pagination .redirectPage .redirectPagePopUp .redirectPageInput .redirectPageInputBox:focus-visible {
    outline: none;
}

.pagination .redirectPage .redirectPagePopUp .redirectPageInput .redirectPageInputLable {
    font-size: 7px;
    top: -3px;
    right: 15px;
    padding: 0 1px;
    pointer-events: none;
    position: absolute;
    background-color: var(--color-white);
    z-index: 301;
    text-align: left;
    font-family: var(--sf-font-sohne);
}

.pagination .prev,
.pagination .prev a,
.pagination .next,
.pagination .next a {
    height: 22px;
    width: 22px;
    border: 1px solid var(--text-color);
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    cursor: pointer;
    margin: 14px 0;
}

.pagination .prev:hover,
.pagination .next:hover {
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 2px 0 rgba(0, 0, 0, 0.3);
}

.pagination .prev:active,
.pagination .next:active {
    background-color: rgba(0, 0, 0, 0.1);
    border: 1px solid var(--text-color);
}

.pagination .prev:not(.disabled):active .arrow-next,
.pagination .next:not(.disabled):active .arrow-next {
    margin: 6px 14px;
}

.pagination .prev:not(.disabled):active .arrow-prev,
.pagination .next:not(.disabled):active .arrow-prev {
    margin: 6px 1px;
}

.pagination .prev:focus-visible:not(:active),
.pagination .next:focus-visible:not(:active) {
    outline: none !important;
    box-shadow: 0 0 0 1px white, 0 0 0 2px var(--outrageous-orange);
}

.pagination .prev.disabled,
.pagination .prev.disabled a,
.pagination .next.disabled,
.pagination .next.disabled a {
    opacity: 0.4;
}

.pagination .prev.disabled:hover,
.pagination .prev.disabled a:hover,
.pagination .next.disabled:hover,
.pagination .next.disabled a:hover {
    -webkit-appearance: none;
}

.pagination .prev.disabled a,
.pagination .prev.disabled a:hover,
.pagination .next.disabled a:hover,
.pagination .next.disabled a {
    background: none;
}

.pagination .arrow-next {
    width: 8px;
    height: 10px;
    margin: 6px 7px;
    fill: var(--text-color);
    transition: all 0.1s ease-in-out;
}

.pagination .arrow-prev {
    width: 6px;
    height: 10px;
    margin: 6px 7px;
    fill: var(--text-color);
    transition: all 0.1s ease-in-out;
}

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

    .pagination .page:hover::after,
    .pagination .page:focus::before {
        background: none;
    }

    .pagination .page.selected::after,
    .pagination .page:active::before {
        content: '';
        position: absolute;
        width: 16px;
        height: 2px;
        left: calc(50% - 8px);
        bottom: 1px;
        background-color: var(--text-color);
    }
}
#write-review-page #reviews {
    padding-left: 30px;
}
.SelectCreationPath * {
    font-weight: unset;
}

.SelectCreationPath {
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    font-size: var(--font-size-small);
    font-family: var(--sf-font-sohne-md);
}

.SelectCreationPath .store-h2 {
    font-size: var(--font-size-headline-sec);
    line-height: 21px;
    font-family: var(--sf-font-sohne);
    color: #58595B;
    letter-spacing: 0.5px;
    margin: 30px auto;
    padding: 0;
    font-weight: unset;
}

.SelectCreationPath .store-h3 {
    color: #58595B;
    letter-spacing: 0.6px;
    padding: 0;
    font-size: 16px;
    line-height: 1.5;
    margin: 0 0 16px 0;
    font-family: var(--sf-font-sohne-md);
}

.SelectCreationPath .options {
    display: flex;
    flex-flow: row nowrap;
    flex: 1 1 auto;
    justify-content: space-between;
    align-items: flex-start;
}

.SelectCreationPath .row {
    display: flex;
}

.SelectCreationPath .column {
    flex: 50%;
    padding: 10px;
}

.SelectCreationPath .options .screenshot {
    box-shadow: 0 2px 4px 0 rgba(221, 221, 221, 0.5);
}

.SelectCreationPath .screenshot>img {
    max-width: 380px;
}

.SelectCreationPath .options>div ul {
    display: flex;
    flex: 0 1 auto;
    flex-flow: column nowrap;
    margin: 0 0 16px 0;
    padding: 0;
    color: #757779;
    font-size: var(--font-size-small);
    line-height: 1.9;
    list-style-position: inside;
    font-family: var(--sf-font-sohne-sb);
}

.SelectCreationPath label {
    display: flex;
    align-items: center;
    flex-flow: row nowrap;
    margin: 30px auto 0;
    color: #58595B;
    font-size: var(--font-size-default);
    line-height: 16px;
    cursor: pointer;
}

.SelectCreationPath label input[type="checkbox"] {
    display: flex;
    flex: 1 1 auto;
    margin-right: 6px;
}

.SelectCreationPath .buttons {
    display: flex;
    align-items: center;
    margin: auto 0 0 0;
    margin-top: 70px;
}

.SelectCreationPath a.button.primary {
    margin-left: 16px;
}

.SelectCreationPath .buttons>a.button:not(.disabled):hover {
    padding: 9px 20px;
    border-width: 1px;
}

.SelectCreationPath .pathcta {
    display: flex;
    flex-flow: column wrap;
    justify-content: space-between;
    margin-left: 32px;
    max-width: 380px;
}

.SelectCreationPath .options p {
    margin-bottom: 32px;
}

.SelectCreationPath li {
    font-size: var(--font-size-default);
    line-height: 1.8;
    font-family: var(--sf-font-sohne-md);
}
.matching-items {
    --spacing: 1.2rem;
    margin-top: var(--spacing);
}

.matching-items ul {
    gap: 4rem;
}

.matching-items li {
    justify-content: space-between;
    width: 256px;
    height: auto;
    margin: 0 4px;
}

.matching-items>h1.store-h1 {
    font-size: var(--font-size-headline-main);
    font-family: var(--sf-font-sohne-b);
    color: #6A707C;
    margin-bottom: var(--spacing);
    margin-left: 4px;
    display: block;
}

.matching-items img+h1 {
    display: block;
    margin-top: var(--spacing);
}

@media (max-width: 991px) {
    .matching-items>h1.store-h1 {
        --font-size-headline-main: 18.66px;
        margin-left: 0;
    }
}

@media (max-width: 768px) {
    .matching-items {
        margin: var(--spacing);
    }

    .matching-items>h1 {
        margin-left: -10px;
    }
}

@media (max-width: 413px) {
    .matching-items>span {
        font-size: var(--font-size-subtitle);
    }
}
.Pricing {
    margin-top: 5px;
    margin-bottom: 5px;
    color: var(--text-color);
    font-family: var(--sf-font-sohne);
}

.Pricing .unitPrice,
.Pricing .original,
.Pricing .productMaxSalePrice,
.Pricing .productMaxPrice {
    font-size: inherit;
    font-family: inherit;
}

.Pricing.original, .Pricing.productMaxPrice {
    text-decoration: none;
}

.Pricing .original.unitPrice, .Pricing .productMaxPrice.productMaxSalePrice {
    text-decoration: line-through;
    color: var(--text-color)
}

.Pricing .unitPrice, .Pricing .productMaxSalePrice{
    color: var(--deep-carrot);
}
.PagePrice {
    display: flex;
    flex-flow: row wrap;
    flex: 1 1 100%;
    align-items: flex-start;
    justify-content: flex-start;
    font-size: var(--font-size-small);
    line-height: 15px;
    font-style: normal;
    font-family: var(--sf-font-sohne);
    height: auto;
    padding: 8px 0 0 0;
    margin: 8px 0;
}

.PagePrice span {
    margin: 0;
    padding: 0;
    display: block;
}

.PagePrice em {
    font-style: normal;
    margin: 0 5px 0 0;
}

.PagePrice em:first-child {
    text-decoration: line-through;
}

.PagePrice em:last-child {
    text-decoration: none;
}

.PagePrice em:nth-child(2) {
    color: #CC0000;
}

.PagePrice>span+span {
    margin-left: 5px;
}

.PagePrice .break {
    flex-basis: 100%;
    margin: 0;
    width: 0;
}

.PagePrice .designer {
    text-transform: uppercase;
    font-size: 9px;
    line-height: 12px;
    font-family: var(--sf-font-sohne-sb);
    letter-spacing: 1px;
    margin: 4px 0 0 0;
}

@media screen and (max-width: 767px) {
    .PagePrice {
        display: inline-grid;
        flex: none;
        font-size: var(--font-size-tiny);
        line-height: 15px;
        border-top: none;
        margin: 0;
        padding: 0;
    }

    .PagePrice>span+span {
        margin-left: 0;
    }


    .PagePrice .designer {
        font-size: 8px;
        line-height: 12px;
        margin: 4px 0 0 0;
    }
}
.partner-info-wrapper {
    display: flex;
    margin: 8px 0 16px 0;
}

.partner-info-wrapper .info-icon {
    margin-right: 8px;
    width: 16px;
    height: 16px;
}

.partner-info-wrapper .info-icon path {
    fill: #5B7491;
}

.partner-info-wrapper .partner-info-text {
    color: #5B7491;
    font-family: var(--sf-font-sohne-md);
    position: relative;
    display: flex;
}

.partner-info-wrapper .partner-info-text .discount {
    text-decoration: underline;
}

.partner-info-text .costco-tooltip {
    position: absolute;
    padding: 12px;
    background-color: #fff;
    border: 1px solid #DCDEE1;
    border-radius: 0.286rem;
    font-family: var(--sf-font-sohne);
    color: var(--text-color-fog);
    letter-spacing: 0;
    line-height: 21px;
    width: max-content;
    max-width: 100%;
    top: calc(100% + 4px);
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
}

.partner-info-text .costco-tooltip::before,
.partner-info-text .costco-tooltip::after {
    content: "";
    position: absolute;
    border-left: 0.714rem solid transparent;
    border-right: 0.714rem solid transparent;
    bottom: 100%;
    left: 50%;
    font-size: 1rem;
    transform: translateX(-50%);
}

.partner-info-text .costco-tooltip::before {
    border-bottom: 0.714rem solid var(--slate-gray);

}


.partner-info-text .costco-tooltip::after {
    border-bottom: 0.714rem solid var(--white);
    margin-bottom: -0.143rem;

}

@media screen and (max-width: 375px) {
    .partner-info-text .costco-tooltip {
        max-width: 22rem;
        left: 46%;
    }
}

a.close-costco-tooltip {
    display: none;
    position: absolute;
    top: 6px;
    width: 16px;
    height: 16px;
    cursor: pointer;
    --height: 2px;
    --width: 20px;
    color: transparent !important;
    overflow: hidden;
    z-index: 999;
    background: hsla(0, 0%, 100%, .8);
    border-radius: 100%;
    right: 0;
    left: auto;
    margin: 8px;
}

a.close-costco-tooltip:before {
    content: "";
    position: absolute;
    background-color: var(--text-color);
    transform: rotate(45deg);
    width: var(--height);
    height: var(--width);
    top: calc(50% - var(--width)*0.5);
    right: calc(50% - var(--height)*0.5);
}

a.close-costco-tooltip:after {
    content: "";
    position: absolute;
    background-color: var(--text-color);
    transform: rotate(45deg);
    width: var(--width);
    height: var(--height);
    top: calc(50% - var(--height)*0.5);
    right: calc(50% - var(--width)*0.5);
}

@media screen and (max-width: 768px) {
    a.close-costco-tooltip {
        display: block;
    }

    .costco-tooltip p {
        margin-right: 15px;
    }
}
.PriceRange {
    padding-top: 22px;
    padding-bottom: 22px;
    position: relative;
    display: flex;
    align-items: center;
}

.CollapsibleContent .PriceRange {
    padding-top: 15px;
    padding-bottom: 15px;
}

.PriceRange .min {
    height: 36px;
    width: 36px;
}

.PriceRange .max {
    height: 36px;
    width: 36px;
}

.input-dollor {
    position: relative;
}

.input-dollor.left input {
    padding: 0 15px;
}

.input-dollor:before {
    position: absolute;
    top: 0;
    content: "$";
}

.input-dollor.left:before {
    left: 11px;
    top: 7px;
}

.PriceRange .minError {
    border: 2px solid #CC0000;
}

.PriceRange .minError .min {
    height: 34px;
    width: 34px;
}

.PriceRange .minError .max {
    height: 34px;
    width: 34px;
}

.PriceRange .minError legend,
.PriceRange .maxError legend {
    color: #CC0000;
}

.PriceRange .button {
    margin: 0px 5px;
    vertical-align: middle;
}

.PriceRange .clearResult {
    color: #585B58;
    font-family: var(--sf-font-sohne);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 18px;
    text-align: center;
    background-color: transparent;
    border: none;
    cursor: pointer;
    text-decoration: underline;
    display: inline;
    margin: 0;
    padding: 0 3px;
}

.PriceRange .clearResult:hover {
    border-radius: 4px;
    background-color: #585B58;
    color: #fff;
    text-decoration: none;
}

.PriceRange .error-msg {
    color: #CC0000;
    font-family: var(--sf-font-sohne-md);
    font-size: 14px;
    letter-spacing: 0;
    line-height: 18px;
    position: absolute;
    margin-top: 55px;
}

.PriceRange .error-msg-hide {
    display: none;
}

.PriceRange fieldset {
    border: solid 1px #929497;
    margin: 0;
    border-radius: 4px;
    min-width: auto;
    padding: 0 8px;
    display: inline;
    position: relative;
    height: 36px;
    font-size: 14px;
    font-family: var(--sf-font-sohne);
    box-sizing: border-box;
    vertical-align: middle;
}

.PriceRange .to {
    padding: 0 4px;
}

.PriceRange fieldset legend {
    width: auto;
    margin: 0;
    font-size: 12px;
    color: #757579;
    position: absolute;
    top: 50%;
    z-index: 1;
    background: #fff;
    padding: 0 3px;
    border-radius: 4px;
    transition: top 100ms;
    transform: translateY(-50%);
}

.PriceRange fieldset input {
    border: none;
    background: none;
    z-index: 2;
    position: relative;
    outline: none;
    height: 36px;
}

.PriceRange fieldset input:focus+legend,
.PriceRange fieldset input.has-value+legend {
    top: -10%;
}

@media screen and (max-width: 480px) {
    .input-dollor.left:before {
        top: 9px;
    }
}
.PopUp {
    z-index: 10002;
    --arrow-size: 9px;
    --arrow-offset: 50%;
    position: absolute;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.25);
    border: 1px solid #DCDEE1;
    background-color: #FFF;
    border-radius: 4px;
}
.PopUp.qv-popup {
    z-index: 999999;
}

.PopUp>* {
    z-index: 1;
}

.PopUp .PopUpContent {
    overflow: hidden;
    max-width: 100vw;
}

.PopUp .PopUpContent.colorOption {
    overflow: visible;
}

.PopUp .PopUpContent.colorOption .DropDownPanel{
    overflow-y: visible;
}

.PopUp.below:before {
    z-index: -1;
    border: 1px solid #DCDEE1;
    border-bottom: none;
    border-left: none;
    content: '';
    height: calc(var(--arrow-size) * 2);
    width: calc(var(--arrow-size) * 2);
    position: absolute;
    transform: rotate(-45deg);
    top: calc((var(--arrow-size) * -1) - 1px);
    left: calc(var(--arrow-offset) - var(--arrow-size));
    background-color: #fff;
}

.PopUp.above:after {
    z-index: -1;
    border: 1px solid #DCDEE1;
    border-bottom: none;
    border-left: none;
    content: '';
    height: calc(var(--arrow-size) * 2);
    width: calc(var(--arrow-size) * 2);
    position: absolute;
    transform: rotate(135deg);
    top: calc(100% - var(--arrow-size) + 1px);
    left: calc(var(--arrow-offset) - var(--arrow-size));
    background-color: #fff;
}

.PopUp:has(.flower-power-tooltip) {
    --arrow-size: 6px;
}

/* For dropdown on New QV Modal - Start */
.PopUp.qv-modal-popup {
    --arrow-size: 8px;
}

.PopUp.qv-modal-popup .PopUpContent {
    min-width: 148px;
}

.PopUp.qv-modal-popup.below:before {
    display: none;
}

.PopUp.qv-modal-popup.above:after {
    display: none;
}

.PopUp.qv-modal-popup .PopUpContent li a .Icon.SelectedTick {
    margin-left: auto;
}
/* For dropdown on New QV Modal - End */

.FavoritesPage .favorites-container {
    display: flex;
    flex-flow: column nowrap;
    padding: 0 24px;
}

.FavoritesPage>.store-h2 {
    display: flex;
    justify-content: center;
    font-size: 22px;
    margin: 8px 0;
    line-height: 1;
    font-weight: unset;
    letter-spacing: .5px;
    flex: 1 1 auto;
    font-family: var(--sf-font-sohne);
}

.FavoritesPage .Breadcrumb li:last-child a {
    font-family: var(--sf-font-sohne);
    pointer-events: unset;
}

.FavoritesPage .Icon.favorite {
    padding-bottom: 10px;
}
.opt-related-ul {
    display: inline-flex;
    list-style-type: none;
    padding: 0;
    margin: 0;
    gap: 10px;
}

.opt-related-ul li a {
    text-decoration: underline;
    font-family: var(--sf-font-sohne-sb);

}

.Optiversal-Related-Links label {
    color: #58595B;
    font-family: var(--sf-font-sohne-b);
    font-size: 18.66px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 28px;
}

.Optiversal-label {
    display: flex;
}

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

    .Optiversal-Related-Links,
    .opt-related-ul {
        display: block;
    }

    .Optiversal-Related-Links,
    .opt-related-ul li {
        margin-top: 15px;
    }
}

@media only screen and (min-width: 375px) and (max-width: 991px) {
    .Optiversal-label {
        justify-content: center;
        padding-top: 24px;
    }
}

.Optiversal-Related-Links:has(.opt-related-ul:empty) {
    display: none;
}

.Optiversal-Related-Links {
    margin: 24px 0px;
}
.thumbnail-grid {
    display: grid;
    grid-row-gap: 15px;
    grid-template-columns: repeat(auto-fill, 262px);
    justify-content: center;
    width: 100%;
    position: relative;
}

.thumbnail-grid:has(.expanded) .thumbnail.disable>a {
    pointer-events: none;
    cursor: default;
}

.break-grid {
    position: relative;
    margin-top: 25px;
}

@media only screen and (max-width: 983px) {
    .break-grid {
        margin-top: -22px;
    }
}

.break-grid .uparrow {
    left: 0%;
    transition: ease 500ms left;
}

.link.break-grid {
    margin-top: -8px !important;
}

.thumbnail-grid.column-3 {
    grid-column-gap: var(--high-column-gap);
    grid-row-gap: var(--high-column-gap);
    grid-template-columns: repeat(auto-fill, var(--three-column-width));
}

.thumbnail-grid.column-3 .break-grid {
    grid-column: 1/4;
}

.thumbnail-grid.column-3 .break-grid.index-1 .uparrow {
    left: calc(100% / 3 * 1 - 100% / 3 / 2 - var(--high-column-gap) + 5px);
}

.thumbnail-grid.column-3 .break-grid.index-2 .uparrow {
    left: calc(100% / 3 * 2 - 100% / 3 / 2 - var(--high-column-gap) + 10px);
}

.thumbnail-grid.column-3 .break-grid.index-3 .uparrow {
    left: calc(100% / 3 * 3 - 100% / 3 / 2 - var(--high-column-gap) + 15px);
}

.thumbnail-grid.column-2 {
    grid-column-gap: var(--mid-column-gap);
    grid-row-gap: var(--mid-column-gap);
    grid-template-columns: repeat(auto-fill, var(--two--column-width));
}

.thumbnail-grid.column-2 .product{
    height: auto;
}

.thumbnail-grid.column-2 .break-grid {
    grid-column: 1/3;
}

.thumbnail-grid.column-2 .break-grid.index-1 .uparrow {
    left: calc(100% / 2 * 1 - 100% / 2 / 2 - var(--mid-column-gap) + 5px);
}

.thumbnail-grid.column-2 .break-grid.index-2 .uparrow {
    left: calc(100% / 2 * 2 - 100% / 2 / 2 - var(--mid-column-gap) + 10px);
}

.thumbnail-grid.column-4 {
    grid-column-gap: var(--high-column-gap);
    grid-row-gap: var(--high-column-gap);
    grid-template-columns: repeat(auto-fill, var(--four-column-width));
}

.thumbnail-grid.column-4 .break-grid {
    grid-column: 1/5;
}

.thumbnail-grid.column-4 .break-grid.index-1 .uparrow {
    left: calc(100% / 4 * 1 - 100% / 4 / 2 - var(--high-column-gap) + 5px);
}

.thumbnail-grid.column-4 .break-grid.index-2 .uparrow {
    left: calc(100% / 4 * 2 - 100% / 4 / 2 - var(--high-column-gap) + 10px);
}

.thumbnail-grid.column-4 .break-grid.index-3 .uparrow {
    left: calc(100% / 4 * 3 - 100% / 4 / 2 - var(--high-column-gap) + 15px);
}

.thumbnail-grid.column-4 .break-grid.index-4 .uparrow {
    left: calc(100% / 4 * 4 - 100% / 4 / 2 - var(--high-column-gap) + 20px);
}

.thumbnail-grid.column-1 {
    grid-column-gap: var(--low-column-gap);
    grid-row-gap: var(--low-column-gap);
    grid-template-columns: repeat(auto-fill, var(--one--column-width));
}

.thumbnail-grid.column-1 .break-grid {
    grid-column: 1/2;
}

.thumbnail-grid.column-1 .break-grid.index-1 .uparrow {
    left: calc(100% / 1 * 1 - 100% / 1 / 2 - var(--low-column-gap) + 5px);
}

.thumbnail-grid.column-5 {
    grid-column-gap: var(--high-column-gap);
    grid-row-gap: var(--high-column-gap);
    grid-template-columns: repeat(auto-fill, var(--five-column-width));
}

.thumbnail-grid.column-5 .break-grid {
    grid-column: 1/6;
}

@media only screen and (max-width: 991px) {
    .new-grid .thumbnail-grid {
        background-color: var(--light-gray-background-color);
        width: auto;
    }

    .new-grid .thumbnail-grid {
        margin-top: 0px;
    }

    .new-grid .thumbnail-grid .product {
        background-color: var(--color-white);
        border-radius: 8px;
    }
}

@media only screen and (max-width: 480px) {
    .new-grid .thumbnail-grid {
        padding: 8px 8px 32px 8px;
        margin: 0 -12px;
    }
}

@media only screen and (max-width: 479px) {
    .new-grid .thumbnail-grid {
        padding: 8px 8px 12px 8px;
    }
}

@media (min-width: 481px) and (max-width: 991px) {
    .new-grid .thumbnail-grid {
        margin: 0 -25px;
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    .new-grid .thumbnail-grid {
        padding: 8px 24px 32px 24px;
    }
}

@media (max-width: 374px){
    .new-grid .thumbnail-grid.column-2 {
        row-gap: 8px;
        column-gap: 9px;
        grid-template-columns: repeat(2, minmax(100px , 1fr));
    } 
}

@media (min-width: 375px) and (max-width: 479px) {
    .new-grid .thumbnail-grid.column-2 {
        row-gap: 8px;
        column-gap: 9px;
        grid-template-columns: repeat(2, minmax(175px , 1fr));
    }
}

@media (min-width: 480px) and (max-width: 767px) {
    .new-grid .thumbnail-grid.column-2 {
        gap: 8px;
        grid-template-columns: repeat(2, minmax(175px , 1fr));
    }
}

@media (min-width: 768px) and (max-width: 990px) {
    .new-grid .thumbnail-grid.column-3 {
        row-gap: 16px;
        column-gap: clamp(8px, 18px + (33 * (100vw - 768px) / 216), 52px);
        grid-template-columns: repeat(3, minmax(228px , 1fr));
    }

    .new-grid .thumbnail-grid {
        padding: 8px 24px 54px 24px;
    }
}

@media (min-width: 991px) and (max-width: 991px) {
    .new-grid .thumbnail-grid.column-4 {
        gap: 11px;
        grid-template-columns: repeat(4, minmax(228px , 1fr));
    }

    .new-grid .thumbnail-grid {
        padding: 8px 24px 31px 24px;
    }
}
.PBPip {
    display: flex;
    flex: 1 1 100%;
    flex-flow: column nowrap;
    padding: 0;
    min-height: 100vh;
    font-family: var(--sf-font-sohne);
}

.PBPip .button-group {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    margin-top: 16px;
    gap: 16px;
}

.PBPip .button-group.stickyBarScroll {
    position: fixed;
    top: 9px;
    right: 110px;
    z-index: 1000;
}

.PBPip .button-group>a {
    height: auto;
}

.PBPip .close {
    display: none;
}

.PBPip .button-group a:last-child {
    margin-left: 0;
}

.PBPip .button-group .primary {
    order: -1;
    display: inline-flex;
    background: var(--deep-carrot);
    border: 1px solid var(--deep-carrot);
    color: #fff;
}

.PBpip .button-group .secondary {
    background: var(--color-white);
    border: 1px solid var(--gray-medium);
    border-radius: 4px;
    color: var(--gray-medium);
    text-transform: uppercase;
    cursor: pointer;
}

.PBPip .button-group.switch {
    visibility: visible;
}

.PBPip .button-group.switch a:only-of-type:first-child {
    margin-left: 0;
}

.PBPip .button-group.switch a:last-child {
    order: -1;
    margin-left: 0;
}

.PBPip .button-group .primary:hover {
    background: var(--dark-carrot) !important;
}

.PBPip .button-group .primary.TP:hover {
    background: var(--tp-dark-blue) !important;
}

.PBPip .content {
    display: flex;
    flex-flow: row;
    font-family: var(--sf-font-sohne-sb);
    line-height: 18px;
    position: relative;
    column-gap: 25px;
}

.PBPip .content .DesignerName>a {
    border: 0;
    font-size: var(--font-size-default);
    line-height: 21px;
    font-family: var(--sf-font-sohne);
}

.PBPip .content .Designer>a {
    color: unset;
    text-decoration: underline;
}

.PBPip .content .Designer>a:hover {
    text-decoration: none;
}

.PBPip .DesignedBy {
    font-family: var(--sf-font-sohne-b);
}

.PBPip .Designer {
    display: flex;
    align-items: center;
}

.PBPip .new-product-info .Designer {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.PBPip .Designer>img {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    margin-right: 8px;
    object-fit: cover;
}

.PBPip .Designer .DesignedBy,
.PBPip .Designer .DesignedBy+span {
    font-family: var(--sf-font-sohne);
}

.PBPip .Designer .DesignedBy {
    margin-right: 4px;
}

.PBPip .store-h1 {
    color: var(--text-color);
    font-size: var(--font-size-headline-main);
    line-height: 27px;
    font-weight: 400;
    font-family: var(--sf-font-sohne);
    margin: 8px 0;
}

.PBPip .content .details,
.PBPip .content .preview {
    display: flex;
    flex-flow: column nowrap;
    width: 100%;
}

.PBPip .content .preview {
    flex: 1 1 66.6%;
}

.PBPip .qty-cta-wrapper.hideDropDown {
    display: block;
}

.options.quantity-option.hide {
    display: none;
}

.PBPip .content .details {
    flex: 1 1 33.3%;
}

.PBPip section:not([id='reviews'] section, section.product-info) {
    display: flex;
    flex-flow: column nowrap;
}

@media screen and (max-width: 480px) {
    .PBPip section:not([id='reviews'] section, section.product-info) {
        margin-bottom: 0;
    }

    .PBPip .details .options {
        border-bottom: solid 1px #dcdee1;
    }

    .PBPip .Designer .DesignedBy,
    .PBPip .new-product-info .Designer .trun-str {
        font-size: 12px;
        line-height: 18px;
        font-weight: 400;
    }
}

.PBPip section.product-info {
    margin-bottom: 8px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.PBPip .new-product-info .product-info {
    margin-bottom: 16px;
}

.PBPip section.product-info .store-h1,
.PBPip section.product-info span.react-loading-skeleton {
    margin: 8px 0 0 0;
}

.PBPip section.cta-qty-section {
    display: flex;
    flex-flow: column nowrap;
    margin-bottom: 10px !important;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 1px solid #dcdee1;
}

.PBPip .details:not(.new-product-info) .product-info>div:first-of-type {
    margin-top: 8px;
}

.PBPip .noBorder {
    border: none !important;
}

.PBPip .fullWidth {
    width: 100%;
}

.PBPip .content .fullWidth.details-info {
    padding-bottom: 10px;
    position: relative;
}

.PBpip .added-details {
    display: flex;
}

.PBPip .added-details>span:first-child {
    margin-right: 6px;
}

.PBPip section.subtotal.subtotal {
    justify-content: space-between;
    align-items: flex-start;
}

.PBPip .new-product-info section.subtotal.subtotal {
    background-color: #f7f7f8;
    border-radius: 8px;
    padding: 0 15px 12px 12px;
}

.PBPip .preview {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    margin: 0;
    position: relative;
}

.PBPip .preview .Carousel {
    width: 95%;
}

.PBPip .preview .Carousel.pip {
    width: 180px;
    height: 471px;
}

.PBPip .new-product-info {
    box-sizing: border-box;
}

.PBPip .genImageWallTitle {
    color: var(--gray-medium);
    font-size: 19px;
    font-family: var(--sf-font-sohne-sb);
    font-weight: bold;
    line-height: 40px;
    letter-spacing: 0;
    margin-bottom: 15px;
}

.PBPip .preview_loading {
    height: 500px;
    display: flex;
    align-items: center;
}

@media screen and (max-width: 991px) {
    .PBPip .preview .Carousel.pip {
        height: 456px;
        min-height: 456px;
    }

    .PBPip .content .DesignerName {
        margin: 0 0 8px;
    }

    .PBPip .new-product-info .QuickViewBottom .Promo {
        min-height: 0px;
    }

    .PBPip .new-product-info section.subtotal.subtotal {
        padding-top: 0px;
    }

    .PBPip section.new-product-info {
        gap: 5px;
    }
}

.new-product-info .designedBy-rating {
    display: flex;
    gap: 47px;
    white-space: nowrap;
}

@media screen and (max-width: 480px) {
    .PBPip .genImageWallTitle {
        font-size: 18px;
        line-height: 28px;
    }

    .PBPip .product-info .store-h1 {
        font-size: 19px;
    }

    .PBPip section.product-info {
        margin-bottom: 0;
    }

    .new-product-info .designedBy-rating {
        gap: 32px;
    }
}

.PBPip .genImageWall {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    gap: 32px;
}

.PBPip .genImageWall .genImage {
    width: calc(33% - 30px);
    max-width: 500px;
    max-height: 500px;
}

.PBPip .genImageWall .genImage img {
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    display: block;
}

@media screen and (max-width: 480px) {
    .PBPip .genImageWall .genImage {
        width: 360px;
        height: 360px;
    }

    .PBPip .genImageWall .genImage img {
        max-width: 360px;
        max-height: 360px;
    }
}

@media screen and (min-width: 480px) and (max-width: 991px) {
    .PBPip .genImageWall .genImage {
        width: 45%;
    }
}

.PBPip .altView {
    display: flex;
    flex: 0 0 auto;
    flex-flow: column nowrap;
    align-items: center;
    margin: 0 16px;
    box-sizing: border-box;
    width: 100px;
    cursor: pointer;
    height: 100%;
    justify-content: center;
}

.PBPip .altView img {
    max-width: 94px;
    max-height: 94px;
}

.PBPip .altView .altViewImageWrapper .alt,
.PBPip .altView .altViewImageWrapper .alt-skeleton {
    max-width: 100%;
    max-height: 100%;
}

.PBPip .Carousel.pip .altView img,
.PBPip .Carousel.pip .altView .alt-skeleton {
    max-width: 106px;
    max-height: 106px;
    object-fit: contain;
}

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

    .PBPip .Carousel.pip .altView img,
    .PBPip .Carousel.pip .altView .alt-skeleton {
        max-width: 96px;
        max-height: 96px;
    }
}

.PBPip .altView span:not(.alt-skeleton):not([aria-live='polite'][aria-busy='true']) {
    display: none;
}

.PBPip .preview .skeleton-hero-img span {
    display: inline-block;
    width: 100%;
    height: 100%;
}

.PBPip .preview  img.hero, .PBPip .preview picture, 
.PBPip .preview .skeleton-hero-img {
    max-width: 500px;
    max-height: 500px;
    display: flex;
    flex: 0 1 auto;
    width: 100%;
    height: auto;
    object-fit: contain;
}

.PBPip .preview .Carousel .altView i {
    display: flex;
    border-top: 2px solid transparent;
    width: 100%;
    box-shadow: none;
    margin: 8px 0;
    flex: 0 0 auto;
    height: 0;
}

.PBPip .imageWall {
    display: flex;
    flex-flow: row nowrap;
    margin: 0;
    position: relative;
    width: 100%;
    max-height: 700px;
    min-height: 370px;
}

.PBPip .heroWrapper {
    display: flex;
    flex-flow: row nowrap;
    flex: 0 1 auto;
    justify-content: center;
    width: 100%;
    position: relative;
}

@media screen and (min-width: 1200px) {
    .PBPip .heroWrapper {
        min-height: 500px;
    }

    .PBPip .preview .Carousel.pip {
        min-height: 471px;
    }

    .PBPip section.subtotal {
        min-height: 80px;
    }

    .designedBy-rating {
        width: 480px;
    }
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
    .PBPip .heroWrapper {
        min-height: 432px;
    }

    .PBPip .preview .Carousel.pip {
        min-height: 420px;
    }

    .PBPip section.subtotal {
        min-height: 105px;
    }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .PBPip .content {
        min-height: 1024px;
    }

    .PBPip .heroWrapper {
        min-height: 380px;
    }

    .PBPip .topCarouselImg .CarouselImg {
        min-height: 380px;
    }

    .PBPip section.subtotal {
        min-height: 80px;
    }

    .PBPip .new-product-info .Designer .DesignedBy,
    .PBPip .new-product-info .Designer .trun-str {
        font-size: 12px;
        line-height: 18px;
        font-weight: 400;
    }

    .new-product-info .designedBy-rating {
        gap: 35px;
    }
}

.QuickView .SubTotal {
    min-height: 106px;
}

.QuickView .SubTotal.NewPricingView {
    min-height: 108px;
}

@media screen and (min-width: 480px) and (max-width: 767px) {
    .PBPip .content {
        min-height: 860px;
    }

    .PBPip .topCarouselImg .CarouselImg {
        min-height: 464px;
    }

    .PBPip section.subtotal {
        min-height: 65px;
    }
}

@media screen and (max-width: 479px) {
    .PBPip .content {
        min-height: 820px;
    }

    .PBPip .topCarouselImg .CarouselImg {
        min-height: 360px;
    }

    .PBPip section.subtotal {
        min-height: 57px;
    }
}

@media screen and (max-width: 412px) {
    .PBPip section.subtotal {
        min-height: 85px;
    }
}

.PBPip .heroWrapper a.prev,
.PBPip .heroWrapper a.next {
    display: flex;
    flex: 0 0 auto;
    width: 24px;
    height: 48px;
    z-index: 1;
    overflow: hidden;
    user-select: none;
    background: #fff;
    color: transparent;
    border: 1px solid var(--gray-dark);
    border-radius: 4px;
    box-sizing: border-box;
    transition: opacity 0.35s;
    position: absolute;
    margin-top: auto;
    margin-bottom: auto;
    top: 0;
    bottom: 0;
}

.PBPip .heroWrapper a.next {
    right: 30px;
}

.PBPip .heroWrapper a.prev {
    left: 30px;
}

.PBPip .heroWrapper>a.next:hover.disabled,
.PBPip .heroWrapper>a.prev:hover.disabled {
    color: transparent;
}

.PBPip .heroWrapper>a.prev:hover:not(.disabled),
.PBPip .heroWrapper>a.next:hover:not(.disabled) {
    border: 1px solid var(--text-color-grey2);
    color: transparent;
    background-color: rgba(235, 237, 240, 0.9);
}

.PBPip .heroWrapper>a.prev:active:not(.disabled),
.PBPip .heroWrapper>a.next:active:not(.disabled) {
    border: 1px solid var(--text-color);
    color: rgba(220, 222, 225, 0.9);
    background-color: rgba(220, 222, 225, 0.9);
}

.PBPip .heroWrapper>a:before {
    content: '';
    height: 5px;
    width: 5px;
    border: solid var(--text-color);
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    position: absolute;
}

.PBPip .heroWrapper>a.prev:before {
    transform: translate(7px, 17px) rotate(135deg);
}

.PBPip .heroWrapper>a.next:before {
    transform: translate(1px, 17px) rotate(-45deg);
}

.PBPip .heroWrapper a.disabled {
    opacity: 0.3;
    cursor: default;
}

.PBPip .preview .social-sharing-icons {
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    gap: 10px;
    z-index: 600;
}

.PBPip .preview .social-sharing-icons .social-share-icon,
.PBPip .preview .social-sharing-icons .fav-icon {
    width: 36px;
    height: 36px;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.PBPip .social-sharing-icons>div [class*='favorite'] {
    margin-bottom: 0 !important;
}

.PBPip .preview .Carousel .altView .altViewImageWrapper {
    display: flex;
    flex-flow: column nowrap;
    flex: 2 0 auto;
    align-items: center;
    justify-content: center;
    border: 1px solid #ebedf0;
}

.PBPip .preview .Carousel.pip .altView .altViewImageWrapper {
    height: 106px;
}

.PBPip .preview .Carousel.pip li {
    max-height: 138px;
    min-height: 138px;
}

@media screen and (max-width: 992px) {
    .PBPip .preview .Carousel.pip .altView .altViewImageWrapper {
        height: 96px;
    }

    .PBPip .preview .Carousel.pip li {
        max-height: 104px;
        min-height: 104px;
    }
}

.PBPip .preview .Carousel .altView:hover .altViewImageWrapper {
    box-shadow: 0 2px #757779;
}

.PBPip .preview .Carousel .altView.selected .altViewImageWrapper {
    box-shadow: 0 2px var(--text-color-grey);
}

.PBPip .preview .Carousel .CarouselImg:not(:has(ul li:nth-child(2))) .altView:hover .altViewImageWrapper {
    box-shadow: none;
}

.PBPip .preview .Carousel.topCarouselImg:not(:has(ul li:nth-child(2)))+.heroWrapper a.prev,
.PBPip .preview .Carousel.topCarouselImg:not(:has(ul li:nth-child(2)))+.heroWrapper a.next {
    display: none;
}

.PBPip .preview .Carousel .altView.selected .imgNum {
    margin-top: 3px;
    color: var(--text-color);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 15px;
    font-family: var(--sf-font-sohne);
}

.PBPip p.empty-resources {
    display: flex;
    flex: 1 1 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    color: var(--deep-carrot);
    font-style: italic;
    min-height: 223px;
}

.PBPip .preview .Carousel .navigation {
    display: none;
}

.PBPip .disclaimer {
    display: flex;
    align-items: center;
    margin: 0 0 7px 0 !important;
    color: #6a707c;
    font-family: var(--sf-font-sohne-b);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 15px;
}

.PBPip section .qty-cta-wrapper {
    display: flex;
    flex-wrap: wrap;
    margin: inherit;
    column-gap: 15px;
    margin-bottom: 16px;
}

.PBPip section .qty-cta-wrapper.newPriceView {
    display: block;
}

.PBPip section .qty-cta-wrapper.newPriceView .AfterPay{
    margin-top: 4px;
}

.PBPip .disclaimer .info-icon {
    margin-right: 4px;
}

.PBPip .disclaimer .info-icon svg {
    width: 16px;
}

.PBPip>.error {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
}

.PBPip>.error p {
    max-width: 60%;
    min-width: 300px;
    font-size: var(--font-size-default);
    line-height: 21px;
    margin: 10% 0;
}

.PBPip .stock-status {
    display: flex;
    align-items: center;
    opacity: 0.99;
    border-radius: 18px;
    font-family: var(--sf-font-sohne-sb);
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0;
    padding: 7px 16px;
    width: fit-content;
    background-color: #f7e6e7;
    height: 22px;
}

.PBPip .low-stock {
    background-color: #f2eee6;
}

.PBPip .details .stock-status .status-message {
    color: #cc0000;
    text-align: center;
    margin-bottom: 0;
    padding-bottom: 0;
    padding-left: 8px;
}

.PBPip .details .stock-status.low-stock .status-message {
    color: #7e5203;
}

.PBPip .out-of-stock .info-message {
    color: #cc0000;
    margin-bottom: 0;
    padding-bottom: 0;
    font-family: var(--sf-font-sohne-sb);
    padding-left: 8px;
    text-align: center;
}

.PBPip .out-of-stock .InfoBadge {
    display: inline-block;
    text-transform: none;
    min-width: 20px;
    border-radius: 50%;
    font-size: 14px;
    text-align: center;
    background: #1779ba;
    color: #fefefe;
}

.PBPip .out-of-stock .info-icon {
    display: inline-block;
    text-transform: none;
    min-width: 20px;
    border-radius: 50%;
    font-size: 14px;
    text-align: center;
    vertical-align: middle;
}

.PBPip .MMB-CTA {
    background-color: #f4f2ec;
    font-family: var(--sf-font-sohne-md);
    color: #757779;
    max-width: 489px;
    padding: 6px 9px;
    margin-top: 20px;
    margin-bottom: 12px;
}

.PBPip .MMB-CTA a {
    color: unset;
    text-decoration: underline;
    margin-left: 4px;
}

.PBPip .MMB-CTA a:hover {
    color: unset;
    text-decoration: none;
}

.PBPip .MMB-CTA header {
    font-size: var(--font-size-subtitle);
    font-family: var(--sf-font-sohne-b);
    margin-bottom: 6px;
    position: relative;
    text-transform: capitalize;
}

.PBPip .MMB-CTA header>sup {
    font-size: small;
    position: relative;
    top: 2px;
    left: -2px;
}

.PBPip .details-wrapper {
    position: relative;
}

.PBPip .listbox-wrapper {
    margin-top: 16px;
}

.PBPip .listbox-wrapper .columnFill {
    column-fill: balance;
}

@media screen and (min-width: 992px) {
    .PBPip .listbox-wrapper .listbox-column {
        columns: 2;
        column-gap: 30.75px;
    }

    .PBPip .preview .Carousel.pip {
        padding-bottom: 29px;
    }
}

@media screen and (min-width: 992px) and (max-width: 1280px) {
    .PBPip .listbox-wrapper .listbox-column {
        column-gap: 23px;
    }

    .PBPip .listbox-wrapper .columnHeight {
        height: 148px;
    }
}

.PBPip .listbox-wrapper .listbox-column .photos {
    font-family: var(--sf-font-sohne-b);
}

.PBPip .noDetailRight {
    grid-template-columns: none;
}

@media screen and (min-width: 991px) {
    .PBPip .details-wrapper .details-left {
        margin: 0 12px 0 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1180px) and (orientation: landscape) {
    .new-product-info .designedBy-rating {
        gap: 35px;
    }
}

@media only screen and (device-width: 1366px) and (orientation: landscape) {
    .new-product-info .designedBy-rating {
        gap: 35px;
    }
}

@media only screen and (min-width: 820px) and (max-width: 1024px) and (orientation: portrait) {
    .new-product-info .designedBy-rating {
        gap: 35px;
    }
}

@media only screen and (max-width: 896px) and (orientation: landscape) {
    .new-product-info .designedBy-rating {
        gap: 32px;
    }
}

@media only screen and (min-width: 1367px) {
    .new-product-info .designedBy-rating {
        gap: 47px;
    }
}

.PBPip .details-wrapper.mobile.read-more {
    max-height: 89px;
    overflow: hidden;
}

.PBPip .details-info.read-more::after {
    content: '';
    width: 100%;
    height: 89px;
    position: absolute;
    left: 0;
    bottom: 0;
    background: linear-gradient(transparent 0, #ffffff 95%, transparent 100%);
}

.PBPip .details-wrapper .additional-details {
    grid-area: left;
}

.PBPip .details-wrapper ul {
    margin: 0;
    padding: 0;
    margin-left: 4px;
}

.PBPip .details-wrapper ul[role='listbox']+.additional-details {
    grid-area: bottom-right;
}

.PBPip .details-wrapper .additional-details {
    grid-area: right;
}

.PBPip .details-info .store-h4 {
    font-family: var(--sf-font-sohne-b);
    font-size: var(--font-size-subtitle);
    text-transform: capitalize;
    margin: 16px 0 10px 0;
}

.PBPip .details-info+button {
    z-index: 10;
    border: 0;
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    text-decoration: underline;
    background: none;
    padding-bottom: 20px;
    padding-left: 0;
    display: flex;
    width: 100%;
}

.PBPip .details-info+button:hover {
    cursor: pointer;
    text-decoration: none;
}

.PBPip .CollapsibleContent>.content {
    padding-left: 0;
}

.PBPip .bannerTitle {
    height: 38px;
    width: 375px;
    color: var(--text-color);
    font-family: var(--sf-font-sohne);
    font-size: 24.88px;
    letter-spacing: 0;
    line-height: 38px;
    padding-left: 8px;
}

.PBPip .sticky-wrapper-bar {
    display: none;
}

.PBPip .sticky-wrapper-bar button .quantity-wrapper .unit-price,
.PBPip .sticky-wrapper-bar button .quantity-wrapper .product-quantity .item-label {
    display: none;
}

.PBPip .sticky-wrapper-bar.sticky {
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10000;
    flex-wrap: nowrap;
    box-shadow: 0 7px 12px 0 rgb(0 0 0 / 20%);
    width: 100%;
    justify-content: center;
    background: rgba(255, 255, 255, 255);
}

.PBPip .qty-sticky {
    display: none;
}

.PBPip .sticky-wrapper-bar .qty-sticky {
    display: flex;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper {
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    height: 68px;
    align-items: center;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .bannerTitle {
    font-size: 24px;
    font-weight: normal;
    font-family: var(--sf-font-sohne);
    line-height: 1.5;
    display: inline-block;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
}

.PBPip .preview-bar-left {
    width: 70%;
}

.PBPip .sticky-wrapper-right {
    width: 30%;
    display: flex;
    justify-content: flex-end;
    height: 100%;
    align-items: center;
    column-gap: 10px;
}

.PBPip .quantity-option .dropdown button {
    padding: 0 1.8rem 0 1rem;
    height: 100%;
}

PBPip .quantity-option .dropdown button .cardsPriceView {
    padding: 0.5rem 1.8rem 0.5rem 1rem;
}

.PBPip .sticky-wrapper-right #pricingDropDownLabel {
    margin: 0;
    padding: 0;
    justify-content: flex-end;
}

.PBPip .sticky-wrapper-right .quantity-option {
    column-gap: 10px;
    margin: 0;
    padding: 0;
    align-items: center;
    justify-content: flex-end;
}

.PBPip .sticky-wrapper-right .quantity-option .dropdown {
    margin: 0;
    min-width: auto;
}

.PBPip .sticky-wrapper-right .quantity-option .quantity-option .dropdown button {
    padding: 9px;
    width: auto;
    padding-right: 30px;
}

.PBPip .sticky-wrapper-right .quantity-option .quantity-option .dropdown button .quantity-wrapper {
    overflow: unset;
}

.PBPip .sticky-wrapper-right .quantity-option .quantity-option .dropdown button .quantity-wrapper .unit-price {
    display: none;
}

.PBPip .sticky-wrapper-right .button-group {
    margin-top: 0px;
    flex-flow: row nowrap;
}

.PBPip .sticky-wrapper-right .sf-modal-overlay {
    height: 100vh;
    overflow: inherit;
}

.PBPip .seo-override .seo-title {
    text-align: left;
    font-size: 18px;
    text-transform: none;
}

.PBPip .seo-override p {
    margin: 10px 0;
    font-size: 14px;
    font-weight: normal;
    line-height: 21px;
}

.PBPip .envelop-container {
    display: flex;
    column-gap: 15px;
    margin-top: 15px;
}

.PBPip .envelop-container img {
    max-width: 180px;
    height: 180px;
    width: 180px;
}

@media screen and (min-width: 768px) {
    .PBPip section.options>div:first-child {
        margin: 8px 0 12px 0;
    }
}

@media screen and (max-width: 1199px) and (min-width: 768px) {

    .PBPip .MMB-CTA,
    .PBPip .MMB-CTA header {
        font-size: var(--font-size-small);
        line-height: 1.2;
    }

    .PBPip .details .store-h1 {
        line-height: 25px;
    }

    .PBPip section.subtotal {
        flex-flow: column nowrap;
        align-items: flex-start;
    }
}

@media screen and (max-width: 991px) and (min-width: 768px) {
    .PBPip .out-of-stock {
        text-align: left;
    }

    .PBPip .heroWrapper a.prev {
        left: 20px;
    }

    .PBPip .heroWrapper a.next {
        right: 20px;
    }

    .PBPip .button-group.stickyBarScroll {
        right: 10px;
    }

    .PBPip .preview img.hero,
    .PBPip .preview .skeleton-hero-img {
        max-width: 420px;
        max-height: 420px;
    }
}

@media screen and (max-width: 480px) {
    .PBPip .preview .Carousel.pip {
        display: none;
    }
}

@media screen and (min-width: 480px) and (max-width: 768px) {

    .PBPip .preview img.hero,
    .PBPip .preview .skeleton-hero-img {
        max-width: 380px;
        max-height: 380px;
    }
}

@media screen and (max-width: 991px) {
    .PBPip .imageWall {
        width: 100%;
    }

    .PBPip .imageWall li {
        margin-bottom: 20px;
    }

    .PBPip .heroWrapper {
        margin: 0 20px;
    }

    .PBPip .heroWrapper a.prev {
        left: -10px;
    }

    .PBPip .heroWrapper a.next {
        right: -10px;
    }

    .PBPip .MMB-CTA {
        margin-bottom: 0;
    }

    .PBPip .MMB-CTA,
    .PBPip .MMB-CTA header {
        font-size: var(--font-size-default);
    }

    .PBPip .out-of-stock {
        margin: 0;
        text-align: left;
    }

    .PBPip .out-of-stock .InfoBadge {
        background: #fefefe;
        color: #1779ba;
        box-shadow: 0 0 0 1px;
    }

    .PBPip {
        flex-flow: column nowrap;
        padding: 0;
        position: relative;
        overflow-x: hidden;
    }

    .PBPip .close {
        display: flex;
        position: absolute;
        top: 0;
        left: 0;
        width: 36px;
        height: 36px;
        cursor: pointer;
        --height: 2px;
        --width: 20px;
        color: transparent;
        overflow: hidden;
        z-index: 999;
        background: rgba(255, 255, 255, 0.8);
        border-radius: 100%;
    }

    .PBPip .options .ProductOption.inline-opt-ux .close {
        display: none;
    }

    .PBPip .altView .altViewImageWrapper .alt,
    .PBPip .altView .altViewImageWrapper .alt-skeleton {
        max-height: 500px;
    }

    .PBPip .preview .Carousel .altView:hover .altViewImageWrapper,
    .PBPip .preview .Carousel .altView.selected .altViewImageWrapper {
        box-shadow: none;
    }

    .PBPip .preview .Carousel .altView.selected i,
    .PBPip .preview .Carousel .altView i {
        display: none;
    }

    .PBPip .preview .Carousel .altView i {
        display: none;
    }

    .PBPip .close:hover,
    .PBPip .close:active {
        color: transparent;
    }

    .PBPip .close:after {
        content: '';
        position: absolute;
        width: var(--width);
        height: var(--height);
        background-color: var(--text-color);
        top: calc(50% - (var(--height) * 0.5));
        right: calc(50% - (var(--width) * 0.5));
        transform: rotate(45deg);
    }

    .PBPip .close:before {
        content: '';
        position: absolute;
        width: var(--height);
        height: var(--width);
        right: 1px;
        background-color: var(--text-color);
        top: calc(50% - var(--width) * 0.5);
        right: calc(50% - var(--height) * 0.5);
        transform: rotate(45deg);
    }

    .PBPip .store-h1 {
        font-size: 16px;
        line-height: 25px;
        font-weight: 500;
        margin: 10px 0 0 0;
    }

    .PBPip .content {
        flex: 1 1 auto;
        flex-flow: row wrap;
        padding: 0;
    }

    .PBPip .details {
        flex: 1 1 100%;
        padding: 8px;
    }

    .PBPip section.subtotal {
        flex-flow: row-reverse wrap;
        padding: 8px 0 0 0;
        align-items: flex-start;
    }

    .PBPip .button-group {
        display: flex;
        position: fixed;
        bottom: 0;
        left: 50%;
        width: calc(100% - 20px);
        margin-left: -50%;
        z-index: 998;
        flex-wrap: nowrap;
        background-color: #ffffff;
        box-shadow: 0 -4px 15px 0 rgba(0, 0, 0, 0.2);
        justify-content: center;
        padding: 8px;
        flex: 1 0 auto;
        gap: 10px;
    }

    .PBPip .button-group>a {
        flex: 1 0 auto;
    }

    .PBPip .button-group div.skeleton-button-group {
        flex: 1 0 auto;
    }

    .PBPip .button-group .primary {
        display: inline-grid;
    }

    .PBPip .button-group a.button {
        padding: 10px 15px;
    }

    .PBPip .preview.read-more {
        background: none;
        border: none;
    }

    .PBPip .preview .Carousel {
        width: 100%;
        height: 100%;
    }

    .PBPip .preview .Carousel .altView {
        width: auto;
        background-color: transparent;
        margin: 0;
        flex: 0 1 auto;
        width: var(--viewport-width);
    }

    .PBPip .preview .Carousel .altView.selected {
        border-bottom: none;
    }

    .PBPip .preview .Carousel .altView .altViewImageWrapper {
        border: none;
    }

    .PBPip .preview .Carousel .navigation {
        display: flex;
        background: transparent;
        padding-left: 0;
        padding-right: 0;
        justify-content: center;
        min-height: 31.98px;
    }

    .PBPip .preview .Carousel .navigation span {
        --size: 12px;
        padding: 0;
        margin: 0;
        width: var(--size);
        height: var(--size);
        background-color: #fff;
        border: 1px solid var(--gray-medium);
    }

    .PBPip .preview .Carousel .navigation span.active {
        background-color: var(--gray-medium);
    }

    .PBPip .preview .Carousel .altView>span {
        display: flex;
        flex-flow: row nowrap;
        margin: 0 0 6px 0;
        font-size: var(--font-size-tiny);
        line-height: 14px;
        color: var(--main-text-color);
    }

    .PBPip .preview .Carousel .altView img {
        border: none;
    }

    .PBPip .SubTotal span {
        justify-content: flex-end;
    }

    .PBPip .SubTotal em,
    .PBPip .SubTotal strong {
        justify-content: flex-end;
    }

    .PBPip .PagePrice {
        border-top: none;
    }

    .PBPip .details-wrapper {
        display: flex;
        flex-direction: column;
    }

    .PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .bannerTitle {
        line-height: 1;
        display: inline-block;
        width: fit-content;
    }
}

@media screen and (min-width: 1325px) {

    .PBPip .preview .heroWrapper picture ,
    .PBPip .preview .skeleton-hero-img {
        margin: 0px 24px;
    }

    .PBPip .heroWrapper a.prev {
        position: relative;
        left: 0px;
    }

    .PBPip .heroWrapper a.next {
        position: relative;
        right: 0px;
    }
}

@media (max-width: 375px) {
    .PBPip .MMB-CTA+.button-group {
        justify-content: space-around;
        margin-right: 2px;
        gap: 2px;
    }

    .PBPip .button-group a.button {
        padding: 8px 8px;
    }
}

.PBPip .details-wrapper ul li:first-of-type {
    font-family: var(--sf-font-sohne-b);
}

.PBPip .details-wrapper ul li {
    list-style-type: '\2022';
    padding-left: 5px;
}

.PBPip>div [class*='favorite'] {
    display: flex;
    margin-bottom: 10px;
    width: fit-content;
}

.PBPip>div .favorite:hover {
    cursor: pointer;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 2) {
    .PBPip .details .options .close {
        display: none;
    }
}

@media (max-width: 480px) {
    .PBPip .preview .Carousel.pip {
        display: none;
    }

    .PBPip .button-group .button {
        font-size: var(--font-size-tiny);
        padding: 8px 8px;
    }
}

.PBPip .additional-info {
    display: flex;
    flex-direction: column;
    width: 100%;
    justify-content: left;
    margin-top: 20px;
    margin-bottom: 4px;
    font-family: var(--sf-font-sohne);
}

.PBPip .additional-info.inline-opt-ux {
    margin-top: 5px;
}

.accordion {
    width: 100%;
}

@media screen and (min-width: 992px) {
    .accordion {
        margin-right: 40px;
    }

    .PBPip .content .details,
    .PBPip .content .preview {
        height: fit-content;
    }

    .previewSticky {
        position: sticky !important;
        top: 64px;
    }
}

.accordion-item {
    width: 100%;
    border-bottom: solid 1px #dcdee1;
    margin-bottom: 10px;
}

.PBPip .additional-info .accordion-title {
    display: flex;
    margin-bottom: 5px;
    margin-top: 5px;
    column-gap: 10px;
    cursor: pointer;
    color: var(--gray-medium);
    font-size: 14px;
    line-height: 21px;
    font-family: var(--sf-font-sohne-b);
    text-transform: uppercase;
    position: relative;
}

.PBPip .additional-info .accordion-title label {
    cursor: pointer;
}

.PBPip .additional-info .accordion-title .accordion-icon {
    width: 18px;
    height: 18px;
    position: relative;
    border-radius: 4px;
    padding: 2px;
    margin-left: 2px;
}

.PBPip .additional-info .accordion-title .accordion-icon:before {
    width: 2px;
    height: 18px;
    background: var(--gray-medium);
    content: '';
    display: block;
    border-radius: 4px;
    position: absolute;
    left: calc(50% - 1px);
}

.PBPip .additional-info .accordion-title .accordion-icon.active:before {
    display: none;
}

.PBPip .additional-info .accordion-title .accordion-icon:after {
    width: 18px;
    height: 2px;
    background: var(--gray-medium);
    content: '';
    display: block;
    border-radius: 4px;
    transform: rotate(180);
    position: absolute;
    top: calc(50% - 1px);
}

html:not(.touchscreen) .PBPip .additional-info .accordion-title:hover label {
    text-decoration: underline;
}

html:not(.touchscreen) .PBPip .additional-info .accordion-title:hover .accordion-icon {
    background: var(--gray-medium);
}

html:not(.touchscreen) .PBPip .additional-info .accordion-title:hover .accordion-icon:before,
html:not(.touchscreen) .PBPip .additional-info .accordion-title:hover .accordion-icon:after {
    background: #fff;
}

.PBPip .additional-info .accordion-title:focus {
    outline: none;
}

.PBPip .additional-info .accordion-title:focus:before {
    width: calc(100% - 2px);
    height: 36px;
    position: absolute;
    top: -8px;
    left: 0;
    right: 0;
    content: '';
    display: block;
    border: solid 1px var(--deep-carrot);
}

.focus-none .PBPip .additional-info .accordion-title:focus:before {
    display: none;
}

.accordion-content {
    padding-bottom: 10px;
    padding-top: 10px;
    line-height: 18px;
}

.accordion-content .content-wrapper {
    margin-bottom: 10px;
}

.accordion-content .content-wrapper label {
    font-family: var(--sf-font-sohne-b);
}

.accordion-content .content-wrapper .content-info {
    color: #585b58;
}

.accordion-content .content-wrapper .content-info .designer-data {
    display: flex;
}

.accordion-content .content-wrapper .designer-img {
    width: 72px;
    height: 72px;
    border-radius: 100%;
    flex-shrink: 0;
    margin-right: 20px;
}

.accordion-content .content-wrapper a {
    text-decoration: underline;
    color: #0065b8;
}

@media screen and (max-width: 768px) {
    .uhf-footer-wrapper .row-content {
        margin-bottom: 50px !important;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) and (-webkit-min-device-pixel-ratio: 1) {
    .uhf-footer-wrapper .row-content {
        margin-bottom: 50px !important;
    }
}

.PBPip .details-wrapper .partner-logo-info {
    margin-top: 15px;
}

.PBPip .details-wrapper .partner-logo-info label {
    display: block;
    padding: 0 0 8px 0;
    cursor: auto;
}

.PBPip .details-wrapper .partner-logo-info .partner-logo {
    width: 183px;
    height: 59px;
}

.PBPip .details .size-and-cover label {
    color: #757779;
    font-family: var(--sf-font-sohne-sb);
    margin-right: 16px;
}

.PBPip .details .size-and-cover span {
    font-family: var(--sf-font-sohne-md);
    color: var(--gray-medium);
}

#container-loader {
    margin-top: 10px;
}

@-webkit-keyframes react-loading-skeleton {
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
}

@keyframes react-loading-skeleton {
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
}

.PBPip .skeleton-loader {
    --base-color: #ebebeb;
    --highlight-color: #f5f5f5;
    --animation-duration: 1.5s;
    --animation-direction: normal;
    --pseudo-element-display: block;
    background-color: var(--base-color);
    border-radius: 0.25rem;
    display: inline-flex;
    line-height: 1;
    position: relative;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    overflow: hidden;
    z-index: 1;
}

.PBPip .skeleton-loader:after {
    content: ' ';
    display: var(--pseudo-element-display);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background-repeat: no-repeat;
    background-image: linear-gradient(90deg,
            var(--base-color),
            var(--highlight-color),
            var(--base-color));
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-animation-name: react-loading-skeleton;
    animation-name: react-loading-skeleton;
    -webkit-animation-direction: var(--animation-direction);
    animation-direction: var(--animation-direction);
    -webkit-animation-duration: var(--animation-duration);
    animation-duration: var(--animation-duration);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

@media (prefers-reduced-motion) {
    .react-loading-skeleton {
        --pseudo-element-display: none;
    }
}

.PBPip .skeleton-loader-price {
    width: 100px;
    height: 28px;
}

.PBPip .skeleton-loader-afterpay {
    width: 373px;
    height: 17.2px;
}

.PBPip .skeleton-loader-afterpay-logo {
    display: none;
}

.PBPip .skeleton-loader-quantity {
    width: 316px;
    height: 42px;
}

.PBPip .qty-cta-wrapper.newPriceView .skeleton-loader-quantity {
    width: 316px;
    height: 70px;
}

.PBPip .quantity-option .option-title {
    min-width: 316px;
    min-height: 42px;
}

.PBPip .orientation {
    display: flex;
    margin: 9px 0 13px;
    gap: 8px;
}

.details:has(.orientation) .options .WALLART_MATERIAL {
    display: none;
}

.PBPip .orientation>label {
    text-transform: uppercase;
    font-family: var(--sf-font-sohne-sb);
    gap: 8px;
}

.PBPip .orientation a {
    text-decoration: underline;
}

.PBPip .orientation a:hover {
    text-decoration: none;
}

.PBPip .orientation a.active {
    outline: none;
    font-family: var(--sf-font-sohne-sb);
    text-decoration: none;
    color: #000;
    cursor: default;
    pointer-events: none;
}

@media screen and (max-width: 406px) {
    .PBPip .skeleton-loader-afterpay {
        width: 250px;
    }

    .PBPip .skeleton-loader-afterpay-logo {
        display: block;
        width: 112px;
        height: 22px;
        margin-top: 8px;
    }
}

.PBPip .QuickViewBottom {
    order: 2;
}

.QuickView.inlineModal .QuickViewBottom {
    min-height: 116px;
}

.QuickView.inlineModal .QuickViewBottom:not(:has(> div.Promo)) {
    min-height: 71px;
}

.QuickView.inlineModal .SubTotal.NewPricingView .QuickViewBottom {
    min-height: 55px;
}

.PBPip .new-product-info .QuickViewBottom {
    display: flex;
    flex-direction: column;
    min-height: 0px;
}

.PBPip .new-product-info .QuickViewBottom .Promo {
    order: 2;
    margin: 8px 0 0 0;
}

.new-product-info .designedBy-rating .DesignerName {
    overflow: hidden;
}

.new-product-info .trun-str {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .PriceValue .originalPriceValue {
    color: #2f3237;
    font-family: var(--sf-font-sohne);
    font-size: 24.88px;
    margin-right: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .PriceValue .perCardPriceValueOriginal {
    color: #595855;
    font-family: var(--sf-font-default);
    font-size: 24px;
    margin-right: 16px;
    font-weight: 600;
    line-height: 30px;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .PriceValue .perCardPriceValueOriginal.discountedPrice,
.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .PriceValue .perCardPriceValueOriginal.discountedPrice span
{
    color: #d74012;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .PriceValue .perCardPriceValueOriginal.regularPrice{
    font-weight: 400;
    font-size: 16px;
    font-family: var(--sf-font-sohne-sb);
    color: #595855;
    line-height: 24px;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .PriceValue .perCardPriceValueOriginal.regularPrice span{
    font-size: 16px;
    display: contents;
    font-weight: 400;
    text-transform: lowercase;
    color: #595855;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .PriceValue .perCardPriceValueOriginal span {
    font-size: 20px;
    display: contents;
    font-weight: 600;
    text-transform: lowercase;
    font-family: var(--sf-font-sohne-sb);
    color: #595855;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .PriceValue .originalPriceValue.strikeOutPrice {
    font-size: 18.66px;
    text-decoration-line: line-through;
    line-height: normal;
}

.PBPip .sticky-wrapper-bar.sticky .sticky-wrapper .PriceValue .originalPriceValue.discountedPrice {
    color: #d74012;
    display: flex;
    flex-direction: column;
}


.designedBy-rating .DesignerName {
    overflow: hidden;
}

.PBPip .new-product-info .product-review-bar .star-rating-component {
    align-items: start;
}

.PBPip .new-product-info .designedBy-rating:has(.Designer img):has(.Designer .full-details) .product-review-bar {
    align-items: center;
}

.PBPip .new-product-info .designedBy-rating:empty {
    display: none;
}

@media screen and (max-width: 934px) {
    .PBPip .new-product-info .designedBy-rating:has(.Designer img):has(.Designer .full-details) .product-review-bar {
        margin-bottom: 6px;
    }
}

@media screen and (min-width: 950px) and (max-width: 1024px) {
    .PBPip .new-product-info .designedBy-rating:has(.Designer img):has(.Designer .full-details) {
        width: 350px;
    }
}

@media screen and (min-width: 960px) {
    .PBPip .new-product-info .designedBy-rating:has(.Designer img):has(.Designer .full-details) {
        width: 31vw;
    }
}

@media screen and (min-width: 1024px) and (max-width: 1026px) {
    .PBPip .new-product-info .designedBy-rating:has(.Designer img):has(.Designer .full-details) {
        width: 34vw;
    }
}

.PBPip .new-product-info:has(.partner-info-wrapper) .subtotal .SubTotal .partner-info-wrapper {
    order: 3;
    margin: 8px 0 0 0;
}

.PBPip .new-product-info section.subtotal .SubTotal {
    min-height: 0;
}
.product {
    display: flex;
    flex-flow: column nowrap;
    flex: 0 0 auto;
    align-items: center;
    padding: 0 10px;
    margin: 0 0 5px 0;
    height: 100%;
    position: relative;
}

.product.qv-modal-no-link{
    cursor: pointer;
}

.product a.quick-view {
    opacity: 0;
    display: flex;
    flex-flow: row nowrap;
    flex: 0 1 auto;
    background: #fff;
    height: 36px;
    border-radius: 4px;
}

.quick-view-icon {
    margin: 7px 4px 7px 8px;
}

.product:focus-within a.quick-view,
.product:focus-within div.favorites-oval {
    visibility: visible;
    opacity: 1;
}

.product a.quick-view.link {
    color: #0065b8;
}

.quick-view-wrapper .uparrow {
    position: relative;
    margin-left: 0;
    margin-top: -10px;
    left: 46.5%;
    top: -42px;
}

.product a.quick-view.button .info {
    display: inline-block;
    margin-right: 5px;
    padding-top: 1px;
}

.product a.quick-view.link .info svg {
    display: none;
}

.product a.quick-view.button .info svg {
    height: 16px;
}

.product a.quick-view.button .info svg .cls-1 {
    fill: #58595b;
}

.product a.quick-view.button:hover .info svg .cls-1 {
    fill: var(--deep-carrot);
}

.product .quickview-row {
    display: flex;
    align-items: center;
    flex-flow: column;
    opacity: 0.9;
    position: absolute;
    top: 9px;
    left: 9px;
}

.product .quickview-row.enable-qv-placement {
    position: static;
    margin: 8px 0 16px;
}

.quick-view-button {
    display: flex;
    align-items: center;
}

.product .quickview-row .quick-view-button .quick-view-text {
    color: #58595b;
    font-family: var(--sf-font-sohne-b);
    font-size: 12px;
    font-style: normal;
    line-height: 18px;
    margin: 9px 8px 9px 4px;
    text-transform: uppercase;
}

a.thumbnail-anchor {
    display: flex;
    flex-flow: column;
    align-items: center;
}

.product .quickview-row a.quick-view.hidden {
    display: none;
}

.product>span.Icon {
    display: none;
}

.product>div.favorites-oval {
    visibility: hidden;
    position: absolute;
    right: 8px;
    top: 8px;
}

.product:hover>span.Icon {
    display: block;
}

.thumbnail .featureBanner {
    display: flex;
    justify-content: center;
    margin: 6px 0;
    flex-direction: column;
    align-items: center;
}

.thumbnail .featureBanner .spoonflower-badge {
    background: #88c8d8;
    height: 18px;
    width: 100px;
    position: relative;
}

.thumbnail .featureBanner .badge:before {
    text-transform: uppercase;
    position: relative;
    top: -1px;
    left: 1px;
    font-size: 9px;
    font-weight: bold;
    letter-spacing: 1px;
    font-kerning: none;
    opacity: 0.95;
    /* simulate photoshop sub-pixel anti-alias */
}

.thumbnail .featureBanner .spoonflower-badge:before {
    content: 'Spoonflower';
}

.editable {
    background: #ecedef;
    border-radius: 15px;
    padding: 5px 12px;
    display: inline-flex;
    color: #2f3237;
    font-size: 12px;
    margin-top: 5px;
    text-transform: capitalize;
    font-family: var(--sf-font-sohne-b);
}

@-moz-document url-prefix() {
    .thumbnail .featureBanner .badge:before {
        font-size: 10px;
        opacity: 0.7;
    }
}

.thumbnail .featureBanner .art-library-badge {
    background: #efe9e5;
    width: 100px;
    height: 18px;
    position: relative;
}

.thumbnail .featureBanner .art-library-badge:before {
    content: 'Art Library';
}

@media (min-width: 768px) {
    .product:hover {
        border-radius: 4px;
        border: none;
        box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.11),
            0 5px 15px 0 rgba(0, 0, 0, 0.08);
        transition: all 0.2s ease-in-out 0s;
    }

    .product:has(.thumbnail.disable):hover {
        border-radius: 0;
        box-shadow: initial;
        transition: initial;
        border: initial;
    }

    .product:hover a.quick-view,
    .product:hover .enable-qv-placement.enable-qv-placement a.store-button,
    .product:focus-within div.enable-qv-placement.enable-qv-placement a.store-button.SFLY {
        opacity: 1;
        color: initial !important;
        border-color: initial !important;
    }

    .product:not(:hover) a.quick-view,
    .product:not(:hover) .enable-qv-placement.enable-qv-placement a.store-button {
        opacity: 0;
    }

    .product .enable-qv-placement a.store-button:hover {
        box-shadow: 0 3px 3px 0 #00000033;
    }

    .product .enable-qv-placement a.store-button:focus {
        outline: 2px solid var(--deep-carrot);
        outline-offset: 1px;
        box-shadow: none;
    }

    .product .enable-qv-placement.enable-qv-placement a.store-button:active {
        box-shadow: 0px 0px 250px 0px #0000001a inset;
        border: 1px solid #595855;
    }

    .product>div.favorites-oval {
        visibility: visible;
    }

    .product>div.desktop-favorite-selected {
        visibility: visible;
    }
}

@media (max-width: 767px) {
    .product {
        margin-right: 0;
    }
}

@media (max-width: 992px) {
    .product a.quick-view {
        display: none;
    }

    .product>div.favorites-oval {
        visibility: visible;
        right: 0;
        top: 0;
    }
}

.product>div.touchScreen {
    visibility: visible;
    right: 0;
    top: 0;
}

@media only screen and (min-width: 375px) and (max-width: 992px) and (orientation: landscape) {
    .product a.quick-view {
        display: none;
    }
}

.heading-section {
    display: flex;
    min-height: 36px;
}

@media only screen and (min-width: 769px) {

    /* When the filters enabled and as-many-as-filters turned on, mockup not expecting any lines */
    .heading-section.filter-enabled.as-many-as-filters {
        border-bottom: none;
        padding-bottom: unset;
    }
}

.heading-section .favorite-section {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
}

.heading-section .favorite-section>a {
    display: flex;
    align-items: center;
}

.heading-section .favorite-section .favorite-svg {
    width: 30px;
    height: 30px;
    position: relative;
    text-align: center;
    padding-right: 10px;
}

.heading-section .favorite-svg>svg {
    overflow: visible;
}

.fav-icon-default {
    pointer-events: none;
    cursor: default;
}

.heading-section .favorite-section rect,
.heading-section .favorite-section circle {
    fill: var(--color-white);
}

.heading-section .favorite-section .favorite-svg circle,
.heading-section .favorite-section .favorite-svg rect {
    fill: var(--deep-carrot);
}

.heading-section .favorite-section text {
    fill: var(--color-white);
    letter-spacing: -2px;
    line-height: 1;
}

.heading-section .favorite-section .label {
    color: var(--text-color);
}

.qv-product-rating {
    display: flex;
    justify-content: center;
    align-items: center;
}

.qv-product-rating .star-rating-component {
    justify-content: center;
}

.qv-product-rating .star-rating-component>span {
    margin-top: 0;
    margin-left: 4px;
    font-family: var(--sf-font-sohne-b);
    font-size: 12px;
    font-style: normal;
    line-height: 18px;
}

.qv-product-rating .star-rating-component~span {
    color: #6a707c;
    font-family: var(--sf-font-sohne-b);
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 18px;
    margin-left: 8px;
    margin-top: 0;
}

.badge {
    --badge-border-radius: 43px;
    height: 22px;
    font-family: var(--sf-font-sohne);
    font-size: 12px;
    letter-spacing: 0.4px;
    line-height: 15px;
    display: flex;
    align-items: center;
    width: 158px;
    justify-content: center;
    text-transform: capitalize;
    margin-bottom: 5px;
    color: #585b58;
}

.badge-personalized-foil {
    border-radius: var(--badge-border-radius);
    background: linear-gradient(135deg, #eada9d 0%, #dcbb65 100%);
    color: #2f3237;
    text-transform: none;
}

.badge-metallic {
    border-radius: var(--badge-border-radius);
    background: radial-gradient(circle, #ffffff 0%, #b9bbcc 100%);
    color: #2d3137;
}

.badge-foil-stamped {
    border-radius: var(--badge-border-radius);
    background: linear-gradient(135deg, #eada9d 0%, #dcbb65 100%);
    color: #2d3137;
}

.badge-glitter {
    border-radius: var(--badge-border-radius);
    background: radial-gradient(circle, #ffffff 0%, #b9bbcc 100%);
    color: #2d3137;
}

.badge-gate-fold {
    border-radius: var(--badge-border-radius);
    background-color: #ffffff;
    color: #585b58;
}

.badge-available-in-foil {
    border-radius: var(--badge-border-radius);
    background: linear-gradient(135deg, #eada9d 0%, #dcbb65 100%);
    color: #2d3137;
}

.badge-marie-kondo-designed {
    border-radius: var(--badge-border-radius);
    background-color: #f3efea;
    color: #2d3137;
}

.badge-metallic-cover-available {
    background: linear-gradient(180deg, #f5f5f5 0%, #d0d0d0 100%);
    line-height: 13px;
    color: #2d3137;
}

.badge-art-library {
    border-radius: var(--badge-border-radius);
    background-color: #efe9e4;
    color: #585b58;
}

.badge-photo-spread {
    border-radius: var(--badge-border-radius);
    background-color: #efe9e4;
    color: #585b58;
}

.badge-large-size {
    border-radius: var(--badge-border-radius);
    background-color: #ffffff;
    color: #585b58;
}

.badge-designer-collection {
    border-radius: var(--badge-border-radius);
    background-color: #ffffff;
    color: #585b58;
}

.thumbnail-image {
    position: relative;
}

.thumbnail-image .magic-spinner-img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    align-items: center;
    display: flex;
    justify-content: center;
    background: #ededed;
    margin: 0;
}

.loading-thumbnail .thumbImage {
    opacity: 0;
}

.loading-thumbnail .thumb-details {
    position: relative;
    min-height: 60px;
}

.magic-spinner-details {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    display: flex;
    flex-direction: column;
    row-gap: 5px;
    margin-top: 10px;
}

.magic-spinner-details span {
    background: #ededed;
    border-radius: 10px;
    height: 15px;
    display: block;
    margin-top: 0 !important;
}

.magic-spinner-details span.text-2 {
    width: 60%;
    margin: 0 auto;
    height: 10px;
}

.loading__dot {
    animation: dot ease-in-out 1s infinite;
    background-color: grey;
    display: inline-block;
    height: 8px;
    margin: 5px;
    width: 8px;
    border-radius: 100%;
}

.loading__dot:nth-of-type(2) {
    animation-delay: 0.2s;
}

.loading__dot:nth-of-type(3) {
    animation-delay: 0.3s;
}

@keyframes dot {
    0% {
        background-color: #cccdd1;
        transform: scale(1);
    }

    50% {
        background-color: #cccdd1;
        transform: scale(1.6);
    }

    100% {
        background-color: #cccdd1;
        transform: scale(1);
    }
}

@-webkit-keyframes react-loading-skeleton {
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
}

@keyframes react-loading-skeleton {
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
}

.color-swatch-container:has(.color-swatch) {
    min-height: 34px;
}

.color-swatches .color-swatch.isQVModal:hover .color-tooltip {
    display: block;
    color: initial;
}

.react-loading-skeleton {
    --base-color: #ebebeb;
    --highlight-color: #f5f5f5;
    --animation-duration: 1.5s;
    --animation-direction: normal;
    --pseudo-element-display: block;
    background-color: var(--base-color);
    width: 100%;
    border-radius: 0.25rem;
    display: inline-flex;
    line-height: 1;
    position: relative;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    overflow: hidden;
    z-index: 1;
}

.react-loading-skeleton:after {
    content: ' ';
    display: var(--pseudo-element-display);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background-repeat: no-repeat;
    background-image: linear-gradient(90deg,
            var(--base-color),
            var(--highlight-color),
            var(--base-color));
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-animation-name: react-loading-skeleton;
    animation-name: react-loading-skeleton;
    -webkit-animation-direction: var(--animation-direction);
    animation-direction: var(--animation-direction);
    -webkit-animation-duration: var(--animation-duration);
    animation-duration: var(--animation-duration);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

@media (prefers-reduced-motion) {
    .react-loading-skeleton {
        --pseudo-element-display: none;
    }
}

.filtern-fav-section .mobileFavIcon {
    display: none;
}

@media only screen and (max-width: 480px) {
    .filtern-fav-section.filter-enabled.as-many-as-filters {
        border-bottom: none;
        padding-bottom: unset;
    }

    .filtern-fav-section .favorite-section {
        display: flex;
        flex: 0 0 auto;
        align-items: center;
    }

    .filtern-fav-section .mobileFavIcon {
        display: block;
        z-index: 99999;
    }

    .filtern-fav-section .favorite-section>a {
        display: flex;
        align-items: center;
    }

    .filtern-fav-section .favorite-section .favorite-svg,
    .filtern-fav-section .favorite-section .unfavorite-msg svg {
        width: 16px;
        height: 16px;
        position: relative;
        text-align: center;
    }

    .filtern-fav-section .favorite-svg>svg {
        overflow: visible;
    }

    .fav-icon-default {
        pointer-events: none;
        cursor: default;
    }

    .filtern-fav-section .favorite-section rect,
    .filtern-fav-section .favorite-section circle {
        fill: var(--color-white);
    }

    .filtern-fav-section .favorite-section .favorite-svg circle,
    .filtern-fav-section .favorite-section .favorite-svg rect {
        fill: var(--deep-carrot);
    }

    .filtern-fav-section .favorite-section text {
        fill: var(--color-white);
        letter-spacing: -2px;
        line-height: 1;
    }

    .filtern-fav-section .favorite-section .label {
        color: var(--text-color);
    }

    .BackToTopMob {
        width: 44px;
        height: 44px;
        border-radius: 999px;
        border: 1px solid var(--Neutrals-Slate, #dbdde1);
        background: var(--Neutrals-White, #fff);
        box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.11),
            0px 5px 15px 0px rgba(0, 0, 0, 0.08);
        text-align: center;
        margin-left: 42%;
        padding: 3px 2px 3px 2px;
        top: auto !important;
        position: fixed;
        bottom: 80px;
        z-index: 99;
        /* initial load state */
        display: none;
        opacity: 0;
        /* set transitional
           - opacity animation within half second, start slow ends faster
           - display changes in a 0.5s (for the fade out effect)
        */
        transition: opacity 0.5s ease-in, display 0.5s;
        /* override first step in transition animation */
        transition-behavior: allow-discrete;
        @starting-style {
            display: block;
            opacity: 0;
        }
    }

    .filtern-fav-section .mobileFavIcon .favorite-section .favorite-svg,
    .filtern-fav-section .mobileFavIcon .favorite-section .unfavorite-msg svg {
        width: 22px;
        height: 22px;
        position: relative;
        text-align: center;
    }
}
.goDesktop {
    display: flex;
    flex-flow: row nowrap;
    margin: 8px 0;
}

.goDesktop span {
    margin-right: 5px;
}
.ProductOption {
    display: flex;
    flex-flow: column nowrap;
    margin: 12px 5px 12px 0;
    box-sizing: border-box;
    justify-content: flex-start;
    align-items: flex-start;
    position: relative;
}

@media screen and (max-width: 480px) {
    .ProductOption {
        margin: 8px 5px 8px 0;
    }

    .ProductOption.inline-opt-ux {
        margin: 8px 5px 20px 0;
    }

}

.ProductOption.single-option {
    margin: 0;
}

.ProductOption.disabled,
.ProductOption .disabled {
    opacity: 0.4;
    pointer-events: none;
}

.ProductOption>label {
    display: flex;
    text-transform: uppercase;
    font-family: var(--sf-font-sohne-b);
    color: #757779;
    margin: 0 0 8px 0;
    flex: 0 0 auto;
    user-select: none;
    width: 100%;
}

.ProductOption>label .learn-more,
.ProductOption>.mobile-options.show .mobile-options-label .learn-more {
    margin-left: 20px;
    text-transform: none;
    font-weight: normal;
    text-decoration: underline;
    font-family: var(--sf-font-sohne);
    cursor: pointer;
}

.ProductOption.icons>label {
    margin: 0 40px 0 0;
}

.ProductOption .optionExtraPrice {
    font-size: 12px;
    white-space: nowrap;
    align-self: center;
    color: var(--neutrals-fog, #6a707c);
    font-family: var(--sf-font-sohne);
    font-style: normal;
    font-weight: 500;
    line-height: 18px;
}

.ProductOption ul {
    display: flex;
    flex-flow: row wrap;
    list-style-type: none;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    gap: 12px 8px;
}

.ProductOption ul li {
    display: flex;
    flex-flow: column nowrap;
    flex: 0 0 auto;
    padding: 0;
    user-select: none;
    box-sizing: border-box;
}

.ProductOption:not(.icons) ul li {
    height: 36px;
}

.ProductOption.chicklet-1:not(.no-icon) .option-wrapper ul li,
.ProductOption.chicklet-1:not(.no-icon) .option-wrapper ul li span.react-loading-skeleton {
    display: flex;
    width: auto;
    flex-direction: column;
    align-items: flex-start;
    min-width: 85px;
}

.ProductOption.chicklet-1:not(.no-icon) .option-wrapper ul li a {
    display: flex;
    padding: 8px 10px;
    flex-direction: column;
    align-items: center;
    align-self: stretch;
    border-radius: 4px;
    border: 1px solid var(--neutrals-slate, #dbdde1);
    background: #fff;
    height: 100%;
}

.ProductOption.chicklet-1:not(.no-icon) .option-wrapper ul li span.react-loading-skeleton {
    display: flex;
    padding: 8px 10px;
    flex-direction: column;
    align-items: center;
    align-self: stretch;
    border-radius: 4px;
    border: 1px solid var(--neutrals-slate, #dbdde1);
    height: 100%;
}

.ProductOption.chicklet-1:not(.no-icon) .option-wrapper ul li a .Icon:not(.SelectedTick) {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.ProductOption:not(.chicklet-2) ul li a {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    padding: 9px 10px 10px 10px;
    color: var(--gray-medium);
    border: 1px solid #929497;
    border-radius: 4px;
    text-decoration: none;
    align-items: center;
    text-align: center;
    justify-content: flex-start;
}

.ProductOption:not(.icons) ul li a {
    margin: 1px;
    position: relative;
}

.ProductOption ul li a:hover {
    color: var(--gray-medium);
    text-decoration: none;
}

.ProductOption:not(.icons) ul li a:not(.show-popup):hover {
    border: 2px solid var(--gray-medium);
    color: var(--gray-medium);
    margin: 0px;
    box-shadow: 0px 3px 3px 0px rgba(0, 0, 0, 0.2);
}

.ProductOption ul li.PBSizeIcon:not(.selected):not(.disabled) a span {
    opacity: 0.3;
}

.ProductOption ul li.PBSizeIcon:not(.selected):not(.disabled) a:hover span {
    opacity: 1;
}

.ProductOption ul li.PBSizeIcon a:focus:before,
.ProductOption:not(.icons) ul li a:not(.show-popup):focus:after {
    position: absolute;
    content: '';
    border: solid 1px var(--deep-carrot);
    width: 100%;
    height: 100%;
    padding: 3px;
    border-radius: 4px;
}


.ProductOption:not(.icons) ul li a:not(.show-popup):active {
    background: rgba(0, 0, 0, 0.1);
}

.ProductOption li:not(.selected):not(.disabled):hover>a[href*='FRAME_'],
.ProductOption li:not(.selected):not(.disabled):hover>a {
    border-color: #757779;
}

.ProductOption ul li.selected>a {
    padding: 8px 9px 9px 9px;
    color: var(--gray-medium);
    border: 2px solid var(--gray-medium);
    font-family: var(--sf-font-sohne-sb);
    font-weight: unset;
}

.ProductOption:not(.icons) ul li.selected>a:not(.show-popup) {
    margin: 0px;
}

.ProductOption:not(.icons) ul li.selected>a:not(.show-popup):focus:after {
    padding: 4px;
}

.ProductOption.WALL_CANVAS_FRAME_COLOR ul li.iconOption>a {
    font-size: var(--font-size-small);
}

.ProductOption ul li.iconOption:not(.selected):not(.disabled):hover .Icon[class*='frame-'] {
    border-radius: 0;
}

.ProductOption ul li.disabled>a {
    cursor: default;
}

.ProductOption ul li.iconOption:not(.PBSizeIcon) {
    width: 60px;
}

.ProductOption ul li.PBSizeIcon:not(.selected):not(.disabled) a:hover {
    border: 2px solid var(--gray-medium);
    color: var(--gray-medium);
    padding: 8px 9px 9px 9px;
    box-shadow: 0px 3px 3px 0px rgba(0, 0, 0, 0.2);
}

.ProductOption ul li.iconOption .Icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column nowrap;
    box-sizing: border-box;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    margin: 0 0 3px 0;
    padding: 0;
}

.ProductOption ul li.PBSizeIcon .Icon {
    width: 58px;
    height: 58px;
}

.ProductOption ul li.iconOption:not(.PBSizeIcon) .Icon svg {
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
}

.ProductOption ul li.iconOption .Icon[class*='frame-'] svg {
    width: 20px;
    height: 20px;
}

.ProductOption ul li.iconOption .Icon[class*='frame-'] {
    width: auto;
    height: auto;
    margin-bottom: 9px;
    border: 1px solid #dcdee1;
    border-radius: 0;
}

.ProductOption ul li.iconOption:not(.PBSizeIcon).selected .Icon {
    box-shadow: none;
    box-shadow: 0px 0px 0px 2px var(--gray-medium);
}

.ProductOption ul li.iconOption:not(.PBSizeIcon):not(.disabled):hover .Icon {
    box-shadow: 0px 0px 0px 2px var(--gray-medium);
}

.ProductOption ul li.iconOption:not(.PBSizeIcon):active .Icon {
    background: rgba(0, 0, 0, 0.1);
}

.ProductOption ul li.iconOption:not(.PBSizeIcon) a {
    border: none;
    font-size: 12px;
    line-height: 12px;
    text-transform: capitalize;
    padding: 0;
    position: relative;
}

.ProductOption ul li.iconOption a:focus {
    outline: none;
}

.ProductOption ul li.PBSizeIcon a {
    position: relative;
}

.ProductOption ul li.iconOption:not(.PBSizeIcon) a:focus .Icon:before {
    position: absolute;
    content: '';
    border: solid 1px var(--deep-carrot);
    width: 60px;
    height: 60px;
    padding: 0;
    border-radius: 100%;
}

.ProductOption ul li.iconOption a:focus .Icon[class*='frame-']:before {
    border-radius: 0;
    width: 26px;
    height: 26px;
}

.ProductOption ul li a.show-popup {
    display: none;
}

.ProductOption ul.popup {
    display: none;
}

.ProductOption.mobile {
    flex-flow: column;
    align-items: flex-start;
    justify-content: center;
    position: relative;
    margin: 0;
}

.ProductOption.mobile label {
    font-weight: 400;
    font-size: var(--font-size-tiny);
    line-height: 14px;
    margin: 0;
}

.ProductOption.mobile:not(.icons) ul li.selected>a.show-popup {
    display: flex;
    border: none;
    color: #58595b;
    font-family: var(--sf-font-sohne-md);
    position: relative;
    padding: 2px 9px 9px 0;
    flex-flow: row nowrap;
}

.ProductOption.mobile:not(.icons) ul li.selected>a.show-popup span:after {
    --size: 6px;
    content: '';
    border-left: var(--size) solid transparent;
    border-right: var(--size) solid transparent;
    border-top: var(--size) solid #58595b;
    width: 0;
    height: 0;
    display: inline-block;
    position: absolute;
    right: -1px;
    transform: translate(-15px, 9px);
}

.ProductOption.mobile:not(.icons) ul li.selected>a.show-popup span {
    display: flex;
    flex: 0 0 auto;
    height: 22px;
    width: 22px;
    margin-left: 3px;
    border-radius: 2px;
}

.ProductOption.mobile:not(.icons) ul li.selected>a.show-popup:active span:not(.ChevronUp):not(:has(.ChevronUp)),
.ProductOption.mobile:not(.icons) ul li.selected>a.show-popup:hover span:not(.ChevronUp):not(:has(.ChevronUp)) {
    background-color: #edeef1;
}

.ProductOption.mobile .DropDown {
    font-weight: 400;
    font-size: var(--font-size-tiny);
    font-family: var(--sf-font-sohne-sb);
    line-height: 14px;
    color: #757779;
}

.ProductOption.mobile .DropDown .arrowIcon {
    margin: 4px 0 0 7px;
}

.ProductOption.colorOption.mobile .DropDown {
    color: var(--text-color);
    font-family: var(--sf-font-sohne-md);
    font-size: 14px;
    margin: 7px 9px 9px 0;
    text-transform: none;
}

.PopUp ul.option-popup {
    display: flex;
    flex-flow: column nowrap;
    margin: 0;
    padding: 0;
}

.PopUp ul.icon-popup {
    flex-flow: row wrap;
    gap: 16px;
    padding: 16px;
}

.PopUp ul.option-popup li {
    display: flex;
    flex-flow: row nowrap;
    justify-content: stretch;
    padding: 0;
}

.PopUp ul.option-popup li:not(.disabled):hover {
    background-color: #ebedf0;
}

.PopUp ul.option-popup li a {
    padding: 9px 49px 10px 49px;
    white-space: nowrap;
    text-decoration: none;
    color: #58595b;
    border: none;
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    font-family: var(--sf-font-sohne-sb);
}

.PopUp ul.icon-popup li a {
    display: flex;
    flex-flow: column nowrap;
    padding: 9px 10px 10px 10px;
    color: var(--gray-medium);
    border: 1px solid #929497;
    border-radius: 4px;
    text-decoration: none;
    justify-content: center;
    align-items: center;
    text-align: center;
    white-space: nowrap;
    flex: 1 1 auto;
}

.PopUp ul.option-popup.icon-popup li.selected a {
    padding: 8px 9px 9px 9px;
    border: 2px solid var(--gray-medium);
}

.PopUp ul.option-popup.icon-popup li.selected a span {
    font-family: var(--sf-font-sohne-sb);
}

.PopUp ul.option-popup:not(.icon-popup) li.iconOption a {
    padding: 9px 17px;
}

.PopUp ul.option-popup li a:focus {
    color: var(--deep-carrot);
    box-shadow: inset 0px 0px 0px 2px var(--deep-carrot);
}

.PopUp ul.option-popup.icon-popup li:not(.selected) a {
    opacity: 0.6;
}

.PopUp ul.option-popup.icon-popup li a svg {
    position: absolute;
    bottom: 0px;
    margin: auto;
    left: 0;
    right: 0;
}

.PopUp ul.option-popup.icon-popup li:not(.selected) a span {
    font-family: var(--sf-font-sohne);
}

.PopUp ul.option-popup li.disabled a {
    opacity: 0.4;
}

.PopUp ul.option-popup span.LabelText {
    margin-left: 7px;
}

.PopUp ul.option-popup li.selected:not(.iconOption) a:before {
    content: '';
    position: absolute;
    height: 14px;
    width: 8px;
    left: 20px;
    transform: rotate(35deg) scale(0.7);
    border: solid #58595b;
    border-width: 0 3px 3px 0;
    box-sizing: border-box;
}

.PopUp ul.icon-popup li .Icon {
    width: 58px;
    height: 64px;
    position: relative;
}

.PopUp ul li.iconOption:not(.selected):not(.disabled):hover .Icon[class*='frame-'] {
    border-radius: 0;
}

.PopUp ul li.iconOption .Icon[class*='frame-'] svg {
    width: 20px;
    height: 20px;
}

.PopUp ul li.iconOption .Icon[class*='frame-'] {
    width: auto;
    height: auto;
    border: 1px solid #dcdee1;
    border-radius: 0 !important;
}

.product-color-swatches {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    min-height: 28px;
    z-index: 20;
}

.pcs-skeleton {
    gap: 3px;
}

.product-color-swatches:hover {
    z-index: 30;
}

.product-color-swatches .product-color-swatch.selected,
.product-color-swatches .product-color-swatch:not(.dynamiccolor):hover {
    border: 2px solid var(--gray-medium);
}

.product-color-swatches .product-color-swatch {
    position: relative;
    border: 2px solid transparent;
    width: 36px;
    height: 36px;
    border-radius: 100%;
    display: inline-block;
    cursor: pointer;
    text-align: center;
    box-sizing: border-box;
    margin-right: 2px;
}

.product-color-swatches .product-color-swatch.dynamiccolor {
    width: auto;
    cursor: default;
}

.product-color-swatches .product-color-swatch.dynamiccolor.flower-power-opt {
    width: 36px;
}

.PopUp .PopUpContent.flower-power-tooltip {
    max-width: min-content;
    min-width: 179px;
}

.product-color-swatches .product-color-swatch.dynamiccolor .dynamiccolor_wrapper {
    white-space: nowrap;
    width: 100%;
    display: flex;
    align-items: center;
    margin: 2px;
}

.product-color-swatches .product-color-swatch.dynamiccolor .dynamiccolor_wrapper .Icon {
    display: inline;
}

.product-color-swatches .product-color-swatch.dynamiccolor .tooltip-text {
    margin-left: 5px;
    line-height: 28px;
    font-size: 12px;
    font-family: var(--sf-font-sohne-md);
}

.product-color-swatches .product-color-swatch.dynamiccolor .Icon svg {
    height: 28px;
}

.product-color-swatches .product-color-swatch.dynamiccolor.flower-power-opt .Icon svg {
    height: 30px;
    width: 30px;
}

.product-color-swatches .product-color-swatch input:focus+.swatch {
    outline: solid 1px var(--deep-carrot);
    outline-offset: 2px;
}

.product-color-swatches .product-color-swatch.selected input:focus+.swatch {
    outline-offset: 6px;
}

.product-color-swatches .product-color-swatch .product-color-tooltip {
    opacity: 0;
    font-size: 13px;
    font-family: var(--sf-font-sohne);
    border: 1px solid var(--gray-dark);
    margin-left: -14px;
    margin-top: 30px;
    pointer-events: none;
    position: absolute;
    width: auto;
    background-color: var(--color-white);
    padding: 10px;
    z-index: 300;
    text-align: left;
    border-radius: 5px;
    transition: opacity 0s linear 0.5s;
}

.product-color-swatches .product-color-swatch .product-dyna-color-tooltip {
    width: 240px;
}

.product-color-swatches .product-color-swatch:hover .product-color-tooltip {
    opacity: 1;
}

.product-hidden-input {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    height: 0;
    width: 0;
    opacity: 0;
    margin: auto;
}

.product-color-swatch .multiColor {
    background: linear-gradient(135deg,
            #a82dd8,
            #6aa8dd 17%,
            #70e5b2 33%,
            #bced42 50%,
            #ede740 66%,
            #e88e4a 83%,
            #e54040);
}

.product-color-swatch>span {
    display: inline-block;
    width: 30px;
    height: 30px;
    border-radius: 100%;
    padding: 0;
    vertical-align: middle;
    text-align: center;
    content: '';
    border: 1px solid var(--gray-dark);
    box-sizing: border-box;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    flex-shrink: 0;
}

.product-color-swatch.none>span:after {
    content: '';
    display: block;
    position: absolute;
    width: 1px;
    height: 26px;
    background: #c6c7c9;
    left: 50%;
    transform: rotate(135deg);
}

.ProductOption .product-color-swatch.dynamiccolor>span {
    border: none;
}

.color-swatch.dynamiccolor>.Icon.dynamiccolor {
    width: 24px;
    height: 24px;
    margin-top: 0px;
}

.product-color-swatches .product-color-swatch .product-color-tooltip p {
    margin: 0;
    padding: 0;
}

.arrow.top:before {
    position: absolute;
    top: -9px;
    right: calc(50% - 8px);
    width: 16px;
    height: 16px;
    transform: rotate(45deg);
    z-index: -1;
    content: '\00a0';
    background-color: var(--color-white);
    display: inline-block;
    border-color: var(--gray-dark);
    border-style: solid;
    border-width: 1px 0 0 1px;
}

.arrow.DynaColorTop:before {
    right: 223px;
}

.ProductOption .option-wrapper {
    width: 100%;
}

@media screen and (max-width: 1199px) and (min-width: 768px) {
    .ProductOption {
        flex-flow: column nowrap;
    }

    .ProductOption.icons>label,
    .ProductOption>label {
        margin: 0 0 16px 0;
    }

    .ProductOption.single-option label {
        margin: 0;
    }
}

@media screen and (max-width: 767px) {
    .ProductOption {
        flex-flow: column;
        align-items: flex-start;
        justify-content: center;
    }

    .ProductOption.icons>label,
    .ProductOption>label {
        font-weight: 400;
        font-size: var(--font-size-tiny);
        line-height: 14px;
        margin: 0 0 10px 0;
    }

    .ProductOption.inline-opt-ux>label {
        font-size: 16px;
        line-height: 20px;
    }

    .ProductOption>ul>li.PBSizeIcon:not(.selected),
    .ProductOption:not(.icons)>ul>li:not(.selected) {
        display: none;
    }

    .ProductOption>ul>li>ul>li.PBSizeIcon:not(.selected),
    .ProductOption:not(.icons)>ul>li>ul>li:not(.selected) {
        display: none;
    }

    .ProductOption ul li.PBSizeIcon.selected>a:not(.popup),
    .ProductOption:not(.icons) ul li.selected>a:not(.popup) {
        display: none;
    }

    .ProductOption ul li.PBSizeIcon.selected>a.show-popup,
    .ProductOption:not(.icons) ul li.selected>a.show-popup {
        display: flex;
        border: none;
        color: #58595b;
        font-family: var(--sf-font-sohne-md);
        position: relative;
        padding: 8px 9px 9px 0;
        flex-flow: row nowrap;
    }

    .ProductOption ul li.PBSizeIcon.selected>a.show-popup span:after,
    .ProductOption:not(.icons) ul li.selected>a.show-popup span:after {
        --size: 6px;
        content: '';
        border-left: var(--size) solid transparent;
        border-right: var(--size) solid transparent;
        border-top: var(--size) solid #58595b;
        width: 0;
        height: 0;
        display: inline-block;
        position: absolute;
        right: -1px;
        transform: translate(-15px, 9px);
    }

    .ProductOption ul li.PBSizeIcon.selected>a.show-popup span,
    .ProductOption:not(.icons) ul li.selected>a.show-popup span {
        display: flex;
        flex: 0 0 auto;
        height: 22px;
        width: 22px;
        margin-left: 3px;
    }

    .ProductOption ul li.PBSizeIcon.selected>a.show-popup:active span,
    .ProductOption ul li.PBSizeIcon.selected>a.show-popup:hover span .ProductOption:not(.icons) ul li.selected>a.show-popup:active span,
    .ProductOption:not(.icons) ul li.selected>a.show-popup:hover span {
        background-color: #edeef1;
    }

    .PopUp ul.option-popup li a:focus {
        color: var(--gray-medium);
        box-shadow: none;
    }

    .ProductOption.inline-opt-ux>label span:first-of-type {
        font-family: 'Sohne';
    }

    .ProductOption.inline-opt-ux>label .colorLabel {
        color: #241F16;
    }

    .ProductOption.inline-opt-ux>label .selectedValue {
        font-weight: 500;
        color: #241F16;
    }
}

@media screen and (max-width: 480px) {
    .ProductOption>label {
        font-size: var(--font-size-default);
    }

    .ProductOption.inline-opt-ux>label {
        font-size: 16px;
        font-family: 'Sohne';
        color: #241F16;
    }

}

.color-option-tooltip {
    padding: 10px;
    font-size: 13px;
}

.PopUp .PopUpContent.flower-power-tooltip .color-option-tooltip {
    padding: 12px;
    font-size: 14px;
    font-family: Sohne;
    line-height: 21px;
}

.product-color-swatch .arrow.top:before {
    left: 22px;
}

.ProductOption>label span:first-of-type {
    font-family: var(--sf-font-sohne-b);
}

.ProductOption>label .colorLabel {
    color: #58595b;
}

.ProductOption>label .selectedValue {
    text-transform: none;
    margin-left: 8px;
    color: #2d3137;
}

.ProductOption>label .selectedOptPrice {
    font-family: var(--sf-font-sohne-md);
    text-transform: none;
    margin-left: 8px;
    font-size: 12px;
}

.ProductOption.hide-material {
    display: none;
}

.product-color-swatch:hover .color-tooltip .optionExtraPrice {
    display: inline;
}

@media (max-width: 480px) {
    .product-color-swatches .product-color-swatch.dynamiccolor .tooltip-text {
        font-family: var(--sf-font-sohne);
    }

}

@media (max-width: 991px) {
    .thumbnail.thumb-redesign .color-swatch.dynamiccolor>.Icon.dynamiccolor {
        width: 22px;
        height: 22px;
    }

    .color-option-tooltip {
        font-family: var(--sf-font-default);
        line-height: 21px;
        color: #242F16;
    }
}

/* QV modal css - start */

.PopUp.qv-modal-popup ul.option-popup {
    margin: 8px 8px;
}

.PopUp.qv-modal-popup ul.option-popup li {
    margin-bottom: 8px;
}

.PopUp.qv-modal-popup ul.option-popup li:not(.disabled):hover {
    border-radius: 32px;
    background: #F2F2F0;
}

.PopUp.qv-modal-popup ul.option-popup li a {
    font-family: 'Sohne';
    line-height: 21px;
    font-weight: 500;
    color: #241F16;
    gap: 8px;
    padding: 7px 8px 8px 14px;
}

.PopUp.qv-modal-popup ul.option-popup li.selected:not(.iconOption) a:before {
    display: none;
}

.PopUp.qv-modal-popup ul.option-popup li a:focus {
    box-shadow: none;
}

.PopUp.qv-modal-popup ul.option-popup span.LabelText {
    margin-left: 0px;
}

.PopUp.qv-modal-popup ul.option-popup .Icon.SelectedTick>svg { 
    width: 16px;
    height: 16px;
}

/*color dropdown css start*/

.product-color-swatches .color-dropdown-container {
    min-width: 149px;
}

.product-color-swatches .color-dropdown-label {
  display: block;
  font-weight: bold;
  margin-bottom: 8px;
  color: #333;
}

.product-color-swatches .color-dropdown {
  position: relative;
}

.product-color-swatches .color-dropdown-selected {
    display: flex;
    align-items: center;
    padding: 0px 10px 0px 0px;
    background-color: #E1E1DF;
    border: 0 solid #96948F;
    border-radius: 32px;
    cursor: pointer;
    user-select: none;
}

.product-color-swatches .color-dropdown .color-dropdown-selected .product-color-swatch-wrapper .Icon.SelectedTick {
  display: none;
}

.product-color-swatches .color-dropdown-selected:hover {
  background-color: #e0e0e0;
}

.product-color-swatches .color-dropdown-selected.open {
  background-color: #e0e0e0;
}

.product-color-swatches .color-swatch {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  margin-right: 12px;
}

.product-color-swatches .color-dropdown-selected .ChevronDown, .product-color-swatches .color-dropdown-selected .ChevronUp {
  margin-left: auto;
}

.product-color-swatches .color-dropdown-options {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    list-style: none;
    margin: 3px 0 0;
    padding: 8px;
    z-index: 10;
    flex-direction: column;
    min-width: 149px;
    box-sizing: content-box;
}

.product-color-swatches .color-dropdown-options .product-color-swatch-wrapper:hover {
  background-color: #F2F2F0;
  border-radius: 32px;
}

.product-color-swatches .product-color-swatch-wrapper {
    display: flex;
    align-items: center;
}

.product-color-swatches .color-dropdown-options .product-color-swatch-wrapper {
    min-width: 149px;
    cursor: pointer;
}

.product-color-swatches .product-color-swatch-wrapper .labelText {
    color: #241F16;
    font-family: 'Sohne';
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 21px;
}

.qv-option-tabs .tab-panel .ProductOption .product-color-swatches .product-color-swatch-wrapper .labelText {
    font-size: 13px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: 0;
    margin: 2px 1px 0px 1px;
}

.product-color-swatches .color-dropdown .product-color-swatch-wrapper .product-color-swatch.selected,
.product-color-swatches .color-dropdown .product-color-swatch-wrapper .product-color-swatch:not(.dynamiccolor):hover {
    border: 2px solid transparent;
}

.product-color-swatches .color-dropdown-options .product-color-swatch-wrapper .Icon.SelectedTick {
    margin-left: auto;
    width: 16px;
    height: 16px;
    display: block;
    align-content: center;
}

/*color dropdown css - ends*/

.qv-option-tabs .tab-panel .product-color-swatches .product-color-swatch-wrapper {
    flex-direction: column;
    width: 36px;
    white-space: nowrap;
}

.PopUp .PopUpContent.flower-power-tooltip.qvn-modal {
    min-width: fit-content;
    max-width: fit-content;
}

.PopUp .PopUpContent.flower-power-tooltip.qvn-modal .color-option-tooltip {
    font-size: 12px;
    line-height: 100%;
    font-weight: 400;
    letter-spacing: 0;
    padding: 10px;
}
/* QV modal css - end */
img.storefe-picture-component-img {
    transition: opacity 0.5s ease-in-out;
  }
  
  img.storefe-picture-component-img.loading { 
    background-image: url('https://cdn.staticsfly.com/i/imgHero_placeholder_mWeb.png');
    opacity: 0;
  }
  
  img.storefe-picture-component-img:not(.loading) {
    opacity: 1;
  }
.sf-modal-overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 10001;
    overflow-y: auto;
}

.sf-modal {
    border-radius: 10px;
    display: flex;
    position: absolute;
    /* this is used for positioning close button */
    background: #fff;
    padding: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.sf-modal.large {
    width: 820px;
    height: 360px;
}

.sf-modal.xlarge {
    width: 845px;
    height: 546px;
}

.sf-modal.xxlarge {
    width: 1086px;
    height: 589px;
}

.sf-modal .close-button {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 20px;
    height: 20px;
    cursor: pointer;
    --height: 2px;
    --width: 20px;
    z-index: 9999;
}

.sf-modal .close-button::after,
.sf-modal .close-button:focus::after {
    content: '';
    position: absolute;
    width: var(--width);
    height: var(--height);
    background-color: #58595B;
    top: calc(50% - (var(--height) * 0.5));
    right: calc(50% - (var(--width) * 0.5));
    transform: rotate(45deg);
}

.sf-modal .close-button::before,
.sf-modal .close-button:focus::before {
    content: '';
    position: absolute;
    width: var(--height);
    height: var(--width);
    right: 1px;
    background-color: #58595B;
    top: calc(50% - var(--width) * 0.5);
    right: calc(50% - var(--height) * 0.5);
    transform: rotate(45deg);
}

.sf-modal .close-button:focus {
    outline: solid 1px var(--deep-carrot);
    outline-offset: 1px;
}

.sf-modal .close-button .icon.close {
    width: 15px;
}

.sf-modal.half {
    height: 50%;
    border-radius: 0;
    bottom: 0;
}

@media (max-width: 768px) {
    .sf-modal {
        width: 100vw;
        height: 500px;
        bottom: 0;
        border-radius: 0;
        padding: 0;
    }

    .sf-modal .close-button {
        top: -40px;
    }

    .sf-modal .close-button:after {
        background-color: #FFF;
    }

    .sf-modal .close-button:before {
        background-color: #FFF;
    }

    .add-to-cart-success-modal-wrapper .close-button {
        top: 4px;
    }

    .add-to-cart-success-modal-wrapper .close-button:after {
        background-color: #58595B;
    }

    .add-to-cart-success-modal-wrapper .close-button:before {
        background-color: #58595B;
    }
}

.add-to-cart-success-modal-wrapper {
    height: fit-content;
}

@media (max-width: 375px) {
    .sf-modal {
        bottom: 0;
        top: auto;
        left: auto;
    }

    .add-to-cart-success-modal-wrapper {
        width: 343px;
        border-radius: 8px 8px 0 0;
        position: fixed;
        top: auto;
        left: 50%;
    }

    .add-to-cart-success-modal-wrapper .close-button {
        top: 4px;
        right: 16px;
    }
}

@media only screen and (min-width: 375px) and (max-width: 992px) and (orientation: landscape) {
    .sf-modal {
        bottom: 0;
        top: auto;
        left: auto;
    }

    .add-to-cart-success-modal-wrapper {
        width: 375px;
        border-radius: 8px 8px 0 0;
        position: fixed;
        top: auto;
        left: 50%;
    }

    .add-to-cart-success-container {
        margin-top: 10px;
    }
}

@media only screen and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:portrait) {
    .sf-modal {
        bottom: 0;
        top: auto;
    }

    .add-to-cart-success-modal-wrapper {
        width: 375px;
        border-radius: 8px 8px 0 0;
        position: fixed;
        top: auto;
        left: 50%;
    }

    .add-to-cart-success-container {
        margin-top: 10px;
    }
}

@media (min-width: 376px) and (max-width: 768px) {
    .add-to-cart-success-modal-wrapper {
        width: 360px;
        border-radius: 8px 8px;
        position: fixed;
        top: auto;
    }
}
.quantity-option {
    display: flex;
    flex-flow: row nowrap;
    margin: 8px 0 0 0;
    position: relative;
    border-bottom: 0 !important;
}

.newPriceView .quantity-option {
    margin-top: 0px;
}

.quantity-option.cardsPriceView {
    flex-flow: column;
}

.PBPip .quantity-option.cardsPriceView .dropdown > button {
    padding: 0.5rem 1.8rem 0.5rem 0.5rem; 
}

.splitQtyAndPriceWrapper {
    align-items: center;
}

.quantity-option.hasDiscount {
    display: none;
}

.quantity-option label {
    display: flex;
    text-transform: uppercase;
    font-family: var(--sf-font-sohne-b);
    padding: 0px 0 5px 0;
    color: #757779;
    margin: 10px 10px 0 0;
    flex: 0 0 auto;
    white-space: nowrap;
    user-select: none;
}

.splitQtyAndPriceWrapper.quantity-option label {
    display: flex;
    text-transform: uppercase;
    font-family: var(--sf-font-sohne-b);
    padding: 0px;
    font-weight: 500;
    color: #585b58;
    margin: 0px 8px 0px 0px;
    flex: 0 0 auto;
    white-space: nowrap;
    user-select: none;
}

.splitQtyAndPriceWrapper.quantity-option .quantityDropdown button {
    border: 1px solid #585b58;
    padding: 0.5rem 1.8rem 0.5rem 0.5rem;
    transform: translateZ(0);
    backface-visibility: hidden;
    will-change: transform;
}

.splitQtyAndPriceWrapper.quantity-option .quantityDropdown button:active {
    background-color: rgba(0, 0, 0, 0.1);
    border-width: 2px;
    padding: 0.5rem 1.8rem 0.5rem 0.5rem;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.splitQtyAndPriceWrapper.quantity-option .quantityDropdown.open button {
    border-color: var(--gray-medium);
    border-width: 2px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    padding: 0.5rem 1.8rem 0.5rem 0.5rem;
    box-shadow: none;
}

.splitQtyAndPriceWrapper.quantity-option .quantityDropdown .caret {
    right: 8px;
}

.quantity-option .dropdown {
    min-width: 204px;
    max-width: 350px;
    max-height: 42px;
    position: relative;
}

.QuickView .inlineModal .quantity-option.cardsPriceView .dropdown {
    max-width: 302px;
}

.quantity-option .quantityDropdown {
    min-width: 56px;
    position: relative;
    margin: 0px 8px 0px 0px;
}

.options.quantity-option.scrollPos {
    position: fixed;
    top: 0px;
    z-index: 1001;
    right: 175px;
}

.quantity-option.scrollPos label {
    width: auto;
    display: inline-block;
    margin-right: 10px;
}

.quantity-option.scrollPos .dropdown .dropdown-menu {
    min-width: 212px;
}

.quantity-option.scrollPos .quantityDropdown .dropdown-menu {
    min-width: 60px;
}

.quantity-option.scrollPos .dropdown {
    max-width: fit-content;
}

.quantity-option.scrollPos .dropdown button .caret {
    right: 8px;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) button {
    width: 100%;
    padding: 0.5rem 1.8rem 0.5rem 1rem;
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    border: 1px solid var(--gray-dark);
    border-radius: 4px;
    color: #333;
    background-color: #fff;
    font-size: var(--font-size-default);
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) button span {
    font-family: var(--sf-font-default);
    color: #58595b;
    font-weight: 400;
    line-height: 21px;
    font-size: var(--font-size-default);
}
.quantity-option.cardsPriceView .dropdown span.quantity-wrapper.selected span.total-price {
    font-family: var(--sf-font-default);
    color: #58595b;
    font-size: var(--font-size-default);
    font-weight: 700;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) button .caret {
    border-width: 6px;
}

:is(.quantity-option.cardsPriceView .dropdown, .quantity-option.cardsPriceView .quantityDropdown) button .caret {
    border-width: 10px;
}


:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .caret {
    position: absolute;
    top: 43%;
    right: 12px;
    border-top: 4px dashed #2d3137;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
}

:is(.quantity-option.cardsPriceView .dropdown, .quantity-option.cardsPriceView .quantityDropdown) .caret {
    position: absolute;
    top: 43%;
    right: 12px;
    border-top: 4px dashed #8E949F;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
}



:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) button:hover {
    box-shadow: 0 0 0 2px var(--gray-medium);
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) button:focus {
    box-shadow: 0 0 0 2px var(--deep-carrot);
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) button:active:after {
    display: none;
}

.quantity-option .dropdown button:active {
    background-color: rgba(0, 0, 0, 0.1);
    border-width: 2px;
    padding: 0.438rem 1.738rem 0.438rem 0.938rem;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown).open button .caret {
    transform: rotate(180deg);
}

.quantity-option .dropdown.open button {
    border-color: var(--gray-medium);
    border-width: 2px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    padding: 0.438rem 1.738rem 0.438rem 0.938rem;
    box-shadow: none;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown).open button span {
    font-family: var(--sf-font-sohne-sb);
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .btn-default:visited {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad;
}

:is(.quantity-option .dropdown button, .quantity-option.cardsPriceView .priceInfo) .product-quantity {
    display: inline-block;
    min-width: auto;
}


:is(.quantity-option .dropdown button, .quantity-option.cardsPriceView .priceInfo) span.unit-price {
    display: inline-block;
    min-width: auto;
}

:is(.quantity-option .dropdown button, .quantity-option .priceInfo) .product-quantity {
    text-align: left;
    display: inline-block;
    min-width: 25%;
    float: none;
}

:is(.quantity-option .dropdown button, .quantity-option .priceInfo) span.unit-price {
    display: inline-block;
    min-width: 75%;
    text-align: right;
    float: none;
}

:is(.quantity-option .dropdown, .quantity-option .priceInfo) .product-quantity {
    float: left;
}

:is(.quantity-option .dropdown, .quantity-option .priceInfo) span.unit-price {
    float: right;
}

.quantity-option .dropdown span.unit-price span.current-price {
    margin: 0px 12px 0 0px;
}

.quantity-option.cardsPriceView .dropdown span.unit-price span.current-price {
    margin: auto;
}


:is(.quantity-option.cardsPriceView .dropdown, .quantity-option.cardsPriceView .priceInfo) span.unit-price.discounted span.current-price {
    color: #D74012;
}

.quantity-option.cardsPriceView .dropdown span.quantity-wrapper span.unit-price.discounted span.current-price{
    color: #D74012;
}

.quantity-option.cardsPriceView .dropdown span.quantity-wrapper.selected span.current-price
{
    font-family: var(--sf-font-default);
    font-size: 14px;
    font-weight: 400; 
    color: #595855;
}

.quantity-option.cardsPriceView .dropdown span.quantity-wrapper.selected span.total-price.discounted
{
    font-family: var(--sf-font-default);
    font-size: 14px;
    font-weight: 500; 
    color: #D74012;
}

.quantity-option.cardsPriceView .dropdown span.total-price.discounted {
    color: #D74012;
}

:is(.quantity-option .dropdown, .quantity-option .priceInfo) span.unit-price.discounted span.current-price:before {
    content: 'Discounted Price: ';
    position: absolute;
    clip: rect(0 0 0 0);
}

:is(.quantity-option .dropdown, .quantity-option .priceInfo) span.unit-price.discounted del {
    color: #58595b;
    margin-right: 6px;
}

.quantity-option .priceInfo span.unit-price.discounted del,
.quantity-option .priceInfo span.unit-price span.current-price {
    margin-right: 8px;
    font-family: var(--sf-font-sohne-sb);
}

:is(.quantity-option .dropdown, .quantity-option .priceInfo) span.unit-price.discounted del:before {
    content: 'Original Price: ';
    position: absolute;
    clip: rect(0 0 0 0);
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-menu {
    max-height: 300px;
    overflow: auto;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 50;
    min-width: 210px;
    overflow-x: clip;
    padding: 5px 0;
    margin: -2px 0 0;
    text-align: left;
    background-color: #fff;
    background-clip: padding-box;
    border: 2px solid var(--gray-medium);
    border-radius: 4px;
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    display: flex;
    flex-direction: column;
    font-size: var(--font-size-default);
    width: 99%;
}

.quantity-option .quantityDropdown .dropdown-menu {
    max-height: 372px;
    min-width: 86px;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item {
    font-weight: 500;
    line-height: 17px;
    padding: 8px 10px 8px 25px;
    cursor: pointer;
    width: calc(100% - 30px);
    position: relative;
    font-size: var(--font-size-default);
    font-family: var(--sf-font-sohne);
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item.selected,
.qty-price-dropdown-item.selected {
    font-family: var(--sf-font-sohne-b);
    color: #58595b;
}


:is(.quantity-option.cardsPriceView .dropdown, .quantity-option.cardsPriceView .quantityDropdown) .dropdown-item.selected,
.qty-price-dropdown-item.selected {
    font-family: var(--sf-font-sohne);
}

li[id^='quantity-'].dropdown-item.selected>span.currentQuantity {
    font-family: var(--sf-font-sohne-b);
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item:hover {
    background-color: #ebedf0;
}

.quantity-option.cardsPriceView .dropdown .dropdown-item {
    padding: 8px 10px 8px 15px;
}

.quantity-option.cardsPriceView .dropdown .mobile-options .dropdown-item {
    padding: 30px 10px 8px 15px;
}

.quantity-option.cardsPriceView .dropdown .dropdown-item.selected {
    background: #DBDDE1;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item:hover {
    background-color: #F5F5F5;
}

:is(.quantity-option.cardsPriceView .dropdown, .quantity-option.cardsPriceView .quantityDropdown) .dropdown-item:hover {
    background-color: #ebedf0;
    box-shadow: inset 0 0 0 1px var(--deep-carrot);
    outline: none;
    border-radius: 4px;
}

.quantity-option .quantityDropdown .mWebDropdown-menu .dropdown-item:focus {
    box-shadow: none;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item.focus {
    background-color: #ebedf0;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item .dropdown-item-space-front {
    position: absolute;
    margin-left: 10px;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item .dropdown-item-space-front svg.uig-svg-icon {
    width: 10px;
    height: 10px;
    margin-top: 9px;
}

:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item .dropdown-item-space-front svg.uig-svg-icon path {
    fill: #f05323;
    background-color: #f5f5f5;
}

:root {
    --checkBorderWidth: 2px;
    --checkHeight: 8px;
    --checkWidth: 4px;
    --checkBorderColor: var(--deep-carrot);
}

.check {
    display: inline-block;
    transform: rotate(35deg);
    height: var(--checkHeight);
    width: var(--checkWidth);
    border-bottom: var(--checkBorderWidth) solid var(--checkBorderColor);
    border-right: var(--checkBorderWidth) solid var(--checkBorderColor);
    position: absolute;
    left: 10px;
    top: -3px;
    bottom: 0;
    margin: auto;
}

.splitQtyAndPriceWrapper .quantityDropdown .check {
    left: 12px;
}

.splitQtyAndPriceWrapper .quantityDropdown .currentQuantity {
    padding: 5px;
    font-family: var(--sf-font-sohne-sb);
}

:is(.splitQtyAndPriceWrapper, .qty-price-dropdown-menu) .item-label {
    margin-right: 4px;
}

:is(.quantity-option .dropdown, .quantity-option .priceInfo) .quantity-wrapper {
    display: flex;
    justify-content: space-between;
}

@media only screen and (min-width: 768px) {
    :is(.quantity-option.cardsPriceView .dropdown, .quantity-option.cardsPriceView .priceInfo) .quantity-wrapper {
        display: flex;
        justify-content: flex-start;
        gap: 5px;
    }
}

:is(.quantity-option.cardsPriceView .dropdown, .quantity-option.cardsPriceView .priceInfo) .quantity-wrapper {
    display: flex;
    justify-content: flex-start;
}

.quantity-option.cardsPriceView .dropdown .mobile-options .quantity-wrapper {
    display: flex;
    justify-content: flex-start;
    transform:  translateY(-50%);
}


:is(.quantity-option .dropdown button, .quantity-option .priceInfo) .quantity-wrapper {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    :is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item .product-quantity {
        width: 100%;
    }

    :is(.quantity-option .dropdown, .quantity-option .priceInfo) .dropdown-item .unit-price {
        width: 100%;
        float: left;
    }

    .options.quantity-option.scrollPos {
        right: 75px;
    }
}

.mWebDropdown-menu {
    list-style-type: none;
    padding: 0;
    margin: 8px 0;
}

.mWebDropdown-menu::-webkit-scrollbar {
    height: 20px;
    width: 10px;
    background: #888;
}

.mobile-options {
    z-index: 2001;
}

.quantity-option .fade-bg {
    position: fixed;
    z-index: 2000;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 20px;
    left: 0;
    top: 0;
}

.quantity-option .splitQtyAndPriceWrapper .fade-bg {
    z-index: 10000;
}

.quantity-option .splitQtyAndPriceWrapper .mobile-options {
    z-index: 10001;
}

@media (max-width: 844px) {
    :is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-menu {
        z-index: 2010;
    }
}

@media screen and (max-width: 991px) {
    .PBPip section .qty-cta-wrapper {
        width: 100%;
    }

    .quantity-option {
        width: 100%;
    }

    .PBPip .quantity-option .mobile-options .close {
        position: absolute;
        top: 0;
        left: unset;
        right: 0;
        --width: 25px;
    }

    .quantity-option .mobile-options {
        display: flex;
        flex-direction: column;
        position: fixed;
        bottom: 15px;
        z-index: 2001;
        width: calc(100% - 30px);
        background-color: var(--color-white);
        padding: 20px;
        box-sizing: border-box;
        left: 15px;
        border-radius: 8px;
        padding-top: 42px;
        max-height: 95%;
        overflow-y: scroll;
    }

    .quantity-option .mobile-options .close {
        display: block !important;
    }

    .quantity-option .mobile-options .mobile-options-label {
        color: #58595b;
        font-family: var(--sf-font-sohne-md);
        font-weight: 500;
        letter-spacing: 0;
        line-height: 18px;
        text-transform: uppercase;
    }

    .quantity-option .mobile-options.active {
        display: flex;
    }

    .quantity-option .dropdown {
        width: 100%;
        margin-right: 5px;
        max-width: none;
    }

    .quantity-option .quantityDropdown {
        max-width: none;
    }

    :is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item {
        border: solid 1px #c6c7c9;
        border-radius: 4px;
        padding: 10px;
        align-items: center;
        justify-content: flex-start;
        background: #fff;
        position: relative;
        z-index: 3;
        margin-bottom: 8px;
        width: calc(100% - 22px);
    }

    :is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .product-quantity {
        margin-right: 5px;
    }

    :is(.quantity-option .dropdown, .quantity-option .priceInfo) button span.unit-price {
        display: inline-block;
        min-width: unset;
        text-align: right;
        float: none;
    }

    :is(.quantity-option .dropdown, .quantity-option .quantityDropdown) button .product-quantity {
        min-width: unset;
    }

    :is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item .check,
    .qty-price-dropdown-menu .qty-price-dropdown-item .check {
        display: none;
    }

    :is(.quantity-option .dropdown, .quantity-option .priceInfo) .dropdown-item .unit-price {
        float: left;
    }
}


:is(.quantity-option .dropdown, .quantity-option .quantityDropdown) .dropdown-item.selected {
    font-family: var(--sf-font-sohne-b);
    background-color: #ebedf0;
}

.qty-price-dropdown-menu {
    overflow-y: scroll;
    z-index: 50;
    overflow-x: clip;
    padding: 5px 0;
    text-align: left;
    background-color: #fff;
    background-clip: padding-box;
    border-radius: 4px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    display: flex;
    flex-direction: column;
    max-height: 400px;
    min-width: 330px;
    font-size: var(--font-size-default);
}

ul.qty-price-dropdown-menu:not(:has(del)) {
    min-width: 248px;
}

.qty-price-dropdown-item .dropdown-item-wrapper .qty-range-label {
    margin-right: 5px;
}

.mWebqty-price-dropdown-menu {
    overflow-y: scroll;
    z-index: 50;
    overflow-x: clip;
    padding: 5px 0;
    text-align: left;
    background-color: #fff;
    background-clip: padding-box;
    border-radius: 4px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    display: flex;
    flex-direction: column;
    font-size: var(--sf-font-sohne-sb);
}

.qty-price-dropdown-item {
    font-weight: 500;
    line-height: 17px;
    padding: 8px 10px 8px 40px;
    position: relative;
    font-size: var(--font-size-default);
    font-family: var(--sf-font-sohne-sb);
}

.qty-price-dropdown-item .dropdown-item-wrapper {
    display: flex;
    justify-content: space-between;
}

.qty-price-dropdown-item .dropdown-item-wrapper span.unit-price.discounted del {
    color: #58595b;
    margin-right: 20px;
}

.qty-price-dropdown-item .dropdown-item-wrapper span.unit-price.discounted span.current-price {
    color: red;
    margin: 0 12px 0 0;
}

.splitQtyAndPriceWrapper .priceListLink>button {
    background: none;
    outline: none;
    border: none;
    text-decoration: underline;
    padding: 0;
    color: #585b58;
    font-family: var(--sf-font-sohne);
    font-weight: 500;
    cursor: pointer;
    font-size: var(--font-size-default);
}

.qty-price-dropdown-item .check {
    left: 21px;
}

.quantityDropdown ul.mWebDropdown-menu li .Icon.SelectedTick {
    width: 12px;
    height: 12px;
    position: absolute;
    top: -7px;
    right: -7px;
}

.quantityDropdown ul.mWebDropdown-menu li.selected {
    border: 2px solid var(--gray-medium);
}

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

    .quantity-option .priceInfo span.unit-price.discounted del,
    .quantity-option .priceInfo span.unit-price span.current-price {
        margin-right: 8px;
        font-family: var(--sf-font-sohne);
    }
}
.Promo {
    display: flex;
    flex-flow: column;
    gap: 5px;
    margin: 8px 0 16px 0;
}
.PBPip .details:not(.new-product-info) .Promo{
    min-height: 42px;
    max-height: 63px;
}

.Promo .PromoBar {
    display: flex;
    flex-flow: row nowrap;
}

.Promo .PromoBar .promo {
    margin-right: 10px;
    max-width: 22px;
}

.Promo .PromoBar .promo.Icon svg {
    margin: auto;
}

@media (max-width: 480px) {
    .Promo .PromoBar .promo {
        margin-right: 8px;
        max-width: 17px;
    }
}

.Promo .PromoBar .PromoMsg .PromoDescription,
.Promo .PromoBar .PromoMsg .PromoCode {
    color: var(--text-color-blue);
    font-family: var(--sf-font-sohne);
    font-size: 14px;
    display: initial;
    text-transform: none;
}
.Promo .PromoBar .PromoMsg .PromoCode {
    font-family: var(--sf-font-sohne-b);
}

.PopUpContent .promo-tt {
    display: flex;
    min-width: 351px;
    max-width: 351px;
    box-sizing: border-box;
    padding: 9px;
    justify-content: space-between;
}

div.PopUp:has(.promo-tt.desktop) {
    max-width: 500px;
    height: 58px;
    gap: 8px;
}

.PopUpContent .promo-tt.desktop {
    max-width: 500px;
    height: 58px;
    gap: 8px;
}

.PopUp:has(.promo-tt) {
  --arrow-size: 7px;
    border: 1px solid #E1E1DF;
    max-width: 351px;
    box-sizing: border-box;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.15);
}

