/* Ju Rossi palette — isolated color layer loaded after the theme schemes. */
:root {
  --jr-magenta-900: #8f0058;
  --jr-magenta-700: #b80070;
  --jr-magenta-500: #db0087;
  --jr-magenta-300: #ed73bd;
  --jr-magenta-100: #fbe6f3;
  --jr-turquoise-700: #078984;
  --jr-turquoise-500: #08beb8;
  --jr-turquoise-100: #e4f8f7;
  --jr-neutral-100: #f1f6f4;
  --jr-neutral-700: #545454;
}

.color-scheme-1,
.color-scheme-4 {
  --color-background: #ffffff;
  --color-background-rgb: 255, 255, 255;
  --color-foreground: #545454;
  --color-foreground-rgb: 84, 84, 84;
  --color-secondary-background: #fbe6f3;
  --color-secondary-background-rgb: 251, 230, 243;
  --color-sub-text: #777777;
  --color-button: #db0087;
  --color-button-rgb: 219, 0, 135;
  --color-button-text: #ffffff;
  --color-secondary-button: #e4f8f7;
  --color-secondary-button-rgb: 228, 248, 247;
  --color-secondary-button-text: #545454;
}

.color-scheme-inverse {
  --color-background: #8f0058;
  --color-background-rgb: 143, 0, 88;
  --color-foreground: #ffffff;
  --color-foreground-rgb: 255, 255, 255;
  --color-secondary-background: #b80070;
  --color-secondary-background-rgb: 184, 0, 112;
  --color-sub-text: #fbe6f3;
  --color-button: #ffffff;
  --color-button-rgb: 255, 255, 255;
  --color-button-text: #8f0058;
  --color-secondary-button: #08beb8;
  --color-secondary-button-rgb: 8, 190, 184;
  --color-secondary-button-text: #ffffff;
}

.color-scheme-3 {
  --color-background: #fbe6f3;
  --color-background-rgb: 251, 230, 243;
  --color-foreground: #545454;
  --color-foreground-rgb: 84, 84, 84;
  --color-secondary-background: #f6cde6;
  --color-secondary-background-rgb: 246, 205, 230;
  --color-sub-text: #806674;
  --color-button: #db0087;
  --color-button-rgb: 219, 0, 135;
  --color-button-text: #ffffff;
  --color-secondary-button: #ffffff;
  --color-secondary-button-rgb: 255, 255, 255;
  --color-secondary-button-text: #8f0058;
}

.color-scheme-5 {
  --color-background: #08beb8;
  --color-background-rgb: 8, 190, 184;
  --color-foreground: #ffffff;
  --color-foreground-rgb: 255, 255, 255;
  --color-secondary-background: #078984;
  --color-secondary-background-rgb: 7, 137, 132;
  --color-sub-text: #e4f8f7;
  --color-button: #ffffff;
  --color-button-rgb: 255, 255, 255;
  --color-button-text: #078984;
  --color-secondary-button: #db0087;
  --color-secondary-button-rgb: 219, 0, 135;
  --color-secondary-button-text: #ffffff;
}

.color-scheme-6 {
  --color-background: #e4f8f7;
  --color-background-rgb: 228, 248, 247;
  --color-foreground: #545454;
  --color-foreground-rgb: 84, 84, 84;
  --color-secondary-background: #ccefed;
  --color-secondary-background-rgb: 204, 239, 237;
  --color-sub-text: #667d7c;
  --color-button: #db0087;
  --color-button-rgb: 219, 0, 135;
  --color-button-text: #ffffff;
  --color-secondary-button: #ffffff;
  --color-secondary-button-rgb: 255, 255, 255;
  --color-secondary-button-text: #078984;
}

.color-scheme-7 {
  --color-background: #f1f6f4;
  --color-background-rgb: 241, 246, 244;
  --color-foreground: #545454;
  --color-foreground-rgb: 84, 84, 84;
  --color-secondary-background: #e4f8f7;
  --color-secondary-background-rgb: 228, 248, 247;
  --color-sub-text: #777777;
  --color-button: #db0087;
  --color-button-rgb: 219, 0, 135;
  --color-button-text: #ffffff;
  --color-secondary-button: #ffffff;
  --color-secondary-button-rgb: 255, 255, 255;
  --color-secondary-button-text: #545454;
}

.btn-default,
.btn-primary,
[name='add'] {
  background-color: #db0087 !important;
  border-color: #db0087 !important;
  color: #ffffff !important;
}

a:hover { color: #db0087; }
*:focus-visible { outline-color: #08beb8 !important; }

/* Hard-coded theme accents that do not use the color-scheme variables. */
::selection { background: #ed73bd; color: #ffffff; }
[class*='badge'], [class*='sale'], [class*='discount'] {
  --color-background: #db0087;
  --color-background-rgb: 219, 0, 135;
}
.gsp-product-card__badge-item,
.gsp-product-card__badge-sale,
.badge[class*='sale'],
.badge[class*='discount'] {
  background: #db0087 !important;
  background-color: #db0087 !important;
  border-color: #db0087 !important;
  color: #ffffff !important;
}
input[type='checkbox']:checked,
input[type='radio']:checked,
.active > [class*='swatch'],
[aria-current='page'] {
  accent-color: #db0087;
  border-color: #db0087 !important;
}
.swiper-pagination-bullet-active,
.splide__pagination__page.is-active,
[class*='progress-bar'] > *,
[class*='free-shipping'] [class*='progress'] > * {
  background-color: #db0087 !important;
}

/* Keep translated labels and drawers inside the viewport. */
html, body { max-width: 100%; overflow-x: clip; }
.gsp-image-inner { overflow: hidden; }
.gsp-image-inner > img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
}
.gsp-menu-mobile,
.gsp-submenu,
.drawer,
[class*='drawer'] { max-width: 100vw; }

/* Color-only treatment for the theme's original green campaign artwork. */
.featured-countdown-timer-product-secondary-img {
  position: relative;
  isolation: isolate;
}
.featured-countdown-timer-product-secondary-img::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background: #db0087;
  mix-blend-mode: color;
  opacity: .78;
}

/* The lower logo block after the countdown must stay white. */
#shopify-section-template--26814060069142__logo_with_badge_VpczWa,
#gsp-section-template--26814060069142__logo_with_badge_VpczWa,
.gsp-section-template--26814060069142__logo_with_badge_VpczWa,
.gsp-section-template--26814060069142__logo_with_badge_VpczWa .container-section,
.gsp-section-template--26814060069142__logo_with_badge_VpczWa .gsp-section-content__wrap,
.gsp-section-template--26814060069142__logo_with_badge_VpczWa .logo-with-badge-inner {
  --color-background: #ffffff !important;
  --color-background-rgb: 255, 255, 255 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
}
.badge-image img,
img[src*='badge-01_'] {
  filter: hue-rotate(92deg) saturate(2.4) brightness(.92) !important;
}
img[src*='image-card-03_'] {
  filter: hue-rotate(228deg) saturate(2.2) brightness(1.06) !important;
}

/* Ju Rossi pink treatment for the Pure Glow Ritual card. */
.gsp-image-inner:has(img[src*='image-card-16_']) {
  position: relative;
  isolation: isolate;
}
.gsp-image-inner:has(img[src*='image-card-16_'])::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: #db0087;
  mix-blend-mode: color;
  opacity: .76;
}
.gsp-image-card:has(img[src*='image-card-16_']) .card-body-inner {
  background: rgba(143, 0, 88, .78) !important;
  border-radius: 24px;
}
.jr-pink-card-image {
  position: relative !important;
  isolation: isolate;
}
.jr-pink-card-image::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  pointer-events: none;
  background: #db0087 !important;
  mix-blend-mode: color !important;
  opacity: .82 !important;
}
.jr-pink-card .card-body-inner {
  background: rgba(143, 0, 88, .82) !important;
  border-radius: 24px !important;
}

/* Cart badge uses the Ju Rossi primary color on desktop and mobile. */
cart-count.gsp-header-badge,
.gsp-header-badge-cart-count {
  background: #db0087 !important;
  background-color: #db0087 !important;
  border-color: #db0087 !important;
  color: #ffffff !important;
}

/* Ju Rossi wordmark replaces every Purevea logo while preserving layout. */
img[src='/assets/ju-rossi-logo.png'] {
  display: block;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
}
.gsp-site-logo img[src='/assets/ju-rossi-logo.png'] {
  max-height: 100% !important;
}
.gsp-marquee img[src='/assets/ju-rossi-logo.png'],
.logo-with-badge-inner img[src='/assets/ju-rossi-logo.png'] {
  width: 100% !important;
  max-width: 100% !important;
}
.gsp-marquee .gsp-image-inner:has(img[src='/assets/ju-rossi-logo.png']),
.logo-with-badge-inner .gsp-image-inner:has(img[src='/assets/ju-rossi-logo.png']) {
  --aspect-ratio: 3.0587155963 !important;
}
.gsp-marquee .badge-image:has(img[src='/assets/ju-rossi-logo.png']),
.logo-with-badge-inner .badge-image:has(img[src='/assets/ju-rossi-logo.png']) {
  --gsp-image-radius: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
}
.gsp-marquee .badge-image img[src='/assets/ju-rossi-logo.png'],
.logo-with-badge-inner .badge-image img[src='/assets/ju-rossi-logo.png'] {
  filter: none !important;
  object-fit: contain !important;
}

/* Ju Rossi floral symbol replaces the two circular Purevea seals. */
.gsp-marquee .gsp-image-inner:has(img[src='/assets/ju-rossi-symbol.png']),
.logo-with-badge-inner .gsp-image-inner:has(img[src='/assets/ju-rossi-symbol.png']) {
  --aspect-ratio: 1 !important;
  aspect-ratio: 1 / 1 !important;
}
.gsp-marquee .badge-image:has(img[src='/assets/ju-rossi-symbol.png']),
.logo-with-badge-inner .badge-image:has(img[src='/assets/ju-rossi-symbol.png']) {
  --gsp-image-radius: 0 !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 0 !important;
  overflow: visible !important;
}
.gsp-marquee img[src='/assets/ju-rossi-symbol.png'],
.logo-with-badge-inner img[src='/assets/ju-rossi-symbol.png'] {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  filter: none !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* Every repeated Ju Rossi wordmark in the marquee receives the floral symbol. */
.gsp-marquee .gsp-marquee-type-logo {
  --jr-marquee-symbol-size: 104px;
  position: relative !important;
}
.gsp-marquee .gsp-marquee-type-logo::after {
  content: '';
  position: absolute;
  top: calc(0px - var(--jr-marquee-symbol-size) * .2);
  right: calc(0px - var(--jr-marquee-symbol-size) * .8);
  z-index: 2;
  width: var(--jr-marquee-symbol-size);
  aspect-ratio: 1 / 1;
  background: url('/assets/ju-rossi-symbol.png') center / contain no-repeat;
  pointer-events: none;
}
@media (max-width: 1023.98px) {
  .gsp-marquee .gsp-marquee-type-logo {
    --jr-marquee-symbol-size: 94px;
  }
}
@media (max-width: 767.98px) {
  .gsp-marquee .gsp-marquee-type-logo {
    --jr-marquee-symbol-size: 40px;
  }
}
.featured-countdown-timer-product-secondary-img::after {
  border-radius: inherit;
  opacity: .68;
}
