/** Shopify CDN: Minification failed

Line 345:1 Unexpected "}"

**/
/* Hero slideshow — real crossfade carousel (auto-rotating, matches Magento) */
.hero-slideshow {
  position: relative;
  overflow: hidden;
}
.hero-slideshow__track {
  position: relative;
  width: 100%;
  aspect-ratio: 1920 / 701;
  background: var(--color-accent-pink);
}
.hero-slideshow__slide {
  display: block;
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.6s ease;
}
.hero-slideshow__slide.is-active {
  opacity: 1;
  visibility: visible;
}
.hero-slideshow__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media (max-width: 749px) {
  .hero-slideshow__track { aspect-ratio: 4 / 3; }
}
.hero-slideshow__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: none;
  background: rgba(255,255,255,0.85);
  color: var(--color-text-heading);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 5;
}
/* flex-shrink:0 is the real fix for the "blank circle" bug: a <button> flex
   container with align-items:center shrinks a stroke-only SVG child's width to
   its min-content size (0, since only the stroke — not fill — contributes to
   Chromium's min-content box for this element), even though width is explicitly
   set. Height is the flex cross-axis here so it isn't affected, which is why
   only the width collapsed. Confirmed live via isolated DOM reproduction. */
.hero-slideshow__arrow svg { width: 20px; height: 20px; flex-shrink: 0; }
.hero-slideshow__arrow--prev { inset-inline-start: 16px; }
.hero-slideshow__arrow--next { inset-inline-end: 16px; }
.hero-slideshow__dots {
  position: absolute;
  bottom: 16px;
  inset-inline: 0;
  display: flex;
  justify-content: center;
  gap: 8px;
  z-index: 5;
}
.hero-slideshow__dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: none;
  background: rgba(255,255,255,0.6);
  cursor: pointer;
  padding: 0;
}
.hero-slideshow__dot.is-active { background: #fff; box-shadow: 0 0 0 1.5px var(--color-text-heading); }

html[dir="rtl"] .hero-slideshow__arrow svg { transform: scaleX(-1); }

/* Category circles */
.category-circles {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 28px;
  padding: var(--spacing-section) 20px;
}
.category-circle {
  text-align: center;
  width: 96px;
}
.category-circle__icon {
  width: 84px;
  height: 84px;
  border-radius: 50%;
  background: var(--color-accent-pink);
  color: var(--color-text-heading);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 700;
  margin: 0 auto 10px;
  overflow: hidden;
}
.category-circle__icon img { width: 100%; height: 100%; object-fit: cover; }
.category-circle__label {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--color-text-heading);
}

/* Section heading (.home-section__heading base rule lives in component-product-card.css) */
.home-section__intro {
  text-align: center;
  padding: var(--spacing-section) 20px 0;
}
.home-section__intro .home-section__heading { margin-bottom: 8px; }
.home-section__subtitle {
  font-size: 14px;
  color: var(--color-text-body);
  margin: 0 0 8px;
}

/* Brand carousel (was a static grid — Magento's am-widget-brand-slider is a real
   draggable, partial-row slider, so this must behave the same way) */
.brand-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  padding: 18px 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 90px;
  transition: box-shadow 0.15s ease;
}
.brand-card:hover { box-shadow: 0 4px 14px rgba(0,0,0,0.08); }
.brand-card img { max-width: 100%; max-height: 56px; width: auto; height: auto; object-fit: contain; display: block; }
.brand-card__name {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-heading);
  text-align: center;
}

/* Product carousel base rules (.product-carousel, .product-card family) live in
   component-product-card.css, shared across home/collection/product pages. */

/* Homepage product-row carousels (Best Seller / Perfume / New Products sections —
   Magento's widget-product-advanced-slider). Shared with the brand row above. */
.home-product-grid-section { padding: var(--spacing-section) 0 0; }

.home-row-carousel {
  position: relative;
  margin-bottom: var(--spacing-section);
}
.home-row-carousel__track {
  display: flex;
  gap: var(--spacing-grid);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  padding-bottom: 4px;
}
.home-row-carousel__track::-webkit-scrollbar { display: none; }
.home-row-carousel__track .brand-card { flex: 0 0 160px; scroll-snap-align: start; }
.home-row-carousel__track .product-card { flex: 0 0 200px; scroll-snap-align: start; }
.home-row-carousel__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: none;
  background: #fff;
  color: var(--color-text-heading);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0,0,0,0.12);
  z-index: 5;
}
.home-row-carousel__arrow svg { width: 18px; height: 18px; flex-shrink: 0; }
.home-row-carousel__arrow--prev { inset-inline-start: -6px; }
.home-row-carousel__arrow--next { inset-inline-end: -6px; }
html[dir="rtl"] .home-row-carousel__arrow svg { transform: scaleX(-1); }
@media (max-width: 749px) {
  .home-row-carousel__arrow { display: none; }
}

/* 2-row grid variant for the Best Seller / New Products rows — Magento's
   widget-product-advanced-slider uses slick's "rows:2" option, rendering each
   "page" as a 2-row x 5-column grid rather than a single scrolling row. This
   recreates that with pure CSS (grid-auto-flow:column) inside the same
   horizontally-scrolling, arrow-navigated track used everywhere else. */
.home-row-carousel--grid .home-row-carousel__track {
  display: grid;
  grid-template-rows: repeat(2, 1fr);
  grid-auto-flow: column;
  grid-auto-columns: 200px;
}
@media (max-width: 749px) {
  .home-row-carousel--grid .home-row-carousel__track {
    grid-template-rows: repeat(2, 1fr);
    grid-auto-columns: 160px;
  }
}

/* Trust badges row — light pink/off-white band, matches Magento's Help Centre /
   Official Retailer / Free delivery / VIP Rewards row exactly (bg sampled live:
   rgb(252,247,249)). */
.trust-badges {
  background: rgb(252, 247, 249);
  padding: 40px 0 32px;
  margin-bottom: var(--spacing-section);
}
.trust-badges__row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.trust-badge { text-align: center; }
.trust-badge__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin: 0 auto 10px;
  color: var(--color-text-heading);
  opacity: 0.65;
}
.trust-badge__icon svg { width: 32px; height: 32px; flex-shrink: 0; }
.trust-badge__title {
  display: block;
  font-weight: 700;
  font-size: 14px;
  color: var(--color-text-heading);
  margin-bottom: 4px;
}
.trust-badge__text {
  display: block;
  font-size: 12px;
  color: var(--color-text-body);
}
.trust-badges__note {
  text-align: center;
  color: var(--color-sale);
  font-size: 12px;
  margin: 16px 0 0;
}
@media (max-width: 749px) {
  .trust-badges__row { grid-template-columns: repeat(2, 1fr); row-gap: 28px; }
}

/* Deals of the Day — real arrow-navigated carousel. Background color and
   illustration sampled live from Magento (rgb(249,240,226) solid, illustration
   image bleeds edge-to-edge on the left half of the section, no padding). */
.deals-carousel {
  position: relative;
  background: rgb(249, 240, 226);
  padding: var(--spacing-section) 0;
  margin-bottom: var(--spacing-section);
  overflow: hidden;
  min-height: 420px;
  display: flex;
  align-items: center;
}
.deals-carousel__illustration {
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  width: 50%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
html[dir="rtl"] .deals-carousel__illustration { transform: scaleX(-1); }
.deals-carousel__inner {
  position: relative;
  display: grid;
  grid-template-columns: 50% 1fr;
  gap: 20px;
  align-items: center;
  width: 100%;
}
.deals-carousel__main { min-width: 0; grid-column: 2; }
.deals-carousel__viewport {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}
.deals-carousel__track {
  display: flex;
  gap: var(--spacing-grid);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  padding-bottom: 4px;
}
.deals-carousel__track::-webkit-scrollbar { display: none; }
.deals-carousel__track .product-card {
  flex: 0 0 200px;
  scroll-snap-align: start;
  background: #fff;
  border-radius: var(--radius-md);
  padding: 10px;
}
.deals-carousel__arrow {
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: none;
  background: #fff;
  color: var(--color-text-heading);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.deals-carousel__arrow svg { width: 18px; height: 18px; flex-shrink: 0; }

@media (max-width: 989px) {
  .deals-carousel__inner { grid-template-columns: 1fr; }
  .deals-carousel__illustration { display: none; }
}
html[dir="rtl"] .deals-carousel__arrow svg { transform: scaleX(-1); }
html[dir="rtl"] .deals-carousel__main { grid-column: 1;
/* Quiet Luxury homepage restoration */
}}.quiet-home{background:#fffdfc;color:#241b1a}.quiet-hero{position:relative;display:flex;align-items:center;min-height:32rem;background-color:#f6d8d3;background-position:center;background-size:cover;background-repeat:no-repeat}.quiet-hero__content{width:100%}.quiet-hero__copy{max-width:31rem;padding-block:5rem}.quiet-hero__eyebrow,.quiet-deals__eyebrow{display:block;margin-bottom:.9rem;color:#a66c6d;font-size:.82rem;letter-spacing:.06em}.quiet-hero h1,.quiet-section-title{margin:0;color:#241b1a;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.03}.quiet-hero h1{max-width:10ch;font-size:clamp(2.8rem,4.5vw,5.2rem)}.quiet-hero p{max-width:26rem;margin:1.5rem 0 2rem;color:#4d403e;font-size:1.05rem;line-height:1.7}.quiet-hero .button{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.8rem 1.55rem;border:1px solid #dc6a80;border-radius:.2rem;background:#dc6a80;color:#fff;font-weight:700;text-decoration:none}.quiet-categories{padding-block:3.5rem 2.5rem}.quiet-categories__row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.8rem;align-items:start}.quiet-category{display:block;min-width:0;color:#241b1a;text-align:center;text-decoration:none}.quiet-category__image{display:block;aspect-ratio:1;overflow:hidden;margin-bottom:.95rem;border-radius:50%;background:#f8e9e5}.quiet-category__image img{display:block;width:100%;height:100%;object-fit:cover}.quiet-category__label{display:block;color:#241b1a;font-size:.86rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.quiet-concerns,.quiet-products,.quiet-deals{padding-block:3.75rem}.quiet-section-heading{margin:0 0 2.3rem;text-align:center}.quiet-section-heading:after{display:block;width:3.25rem;height:.16rem;margin:1rem auto 0;background:#dc6a80;content:""}.quiet-section-title{font-size:clamp(2.25rem,3.4vw,3.8rem)}.quiet-concerns__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.8rem}.quiet-concern{display:flex;min-height:14rem;flex-direction:column;align-items:center;justify-content:center;padding:1.3rem 1rem;border:1px solid #eadbd7;border-radius:.25rem;background:#fffdfc;color:#241b1a;text-align:center;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease}.quiet-concern:hover{transform:translateY(-.25rem);box-shadow:0 .7rem 1.8rem rgba(89,54,49,.1)}.quiet-concern__icon{display:grid;width:3rem;height:3rem;place-items:center;margin-bottom:.9rem;color:#dc6a80}.quiet-concern h3{margin:0 0 .65rem;font-size:1rem}.quiet-concern p{margin:0;color:#6c5e5c;font-size:.88rem;line-height:1.5}.quiet-concern span:last-child{margin-top:1.1rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-decoration:underline;text-underline-offset:.25rem;text-transform:uppercase}.quiet-products__header{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:2.3rem}.quiet-products__header .quiet-section-heading{flex:1;margin-bottom:0}.quiet-products__viewall{color:#241b1a;font-weight:600;text-decoration:underline;text-underline-offset:.28rem}.quiet-trust{margin-top:2rem;border-top:1px solid #eadbd7;border-bottom:1px solid #eadbd7;background:#fdf7f5}.quiet-trust__row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.quiet-trust__item{display:flex;align-items:center;gap:.9rem;padding:1.55rem}.quiet-trust__icon{display:grid;width:2.2rem;height:2.2rem;flex:0 0 auto;place-items:center;color:#dc6a80}.quiet-trust__item strong,.quiet-trust__item span{display:block}.quiet-trust__item span{margin-top:.2rem;color:#6c5e5c;font-size:.8rem}@media(max-width:989px){.quiet-hero{min-height:27rem;background-position:64% center}.quiet-categories__row,.quiet-concerns__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quiet-trust__row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:649px){.quiet-hero{min-height:32rem;background-position:68% center}.quiet-hero:before{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,244,241,.94),rgba(255,244,241,.34));content:""}.quiet-hero__content{position:relative;z-index:1}.quiet-hero__copy{max-width:22rem;padding-block:4rem}.quiet-categories{padding-block:2.5rem}.quiet-categories__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1rem}.quiet-concerns__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quiet-concern{min-height:12rem}.quiet-products__header{align-items:start;flex-direction:column}.quiet-trust__row{grid-template-columns:1fr}}
.quiet-products .home-row-carousel{position:relative;overflow:hidden}.quiet-products .home-row-carousel__track{display:flex;gap:1.5rem;overflow-x:auto;padding:.25rem .25rem .75rem;scroll-snap-type:x proximity;scrollbar-width:none}.quiet-products .home-row-carousel__track::-webkit-scrollbar{display:none}.quiet-products .home-row-carousel__item,.quiet-products .home-row-carousel__track .product-card{flex:0 0 calc((100% - 4.5rem)/4);min-width:0;scroll-snap-align:start}.quiet-products .product-card{display:flex;min-height:100%;flex-direction:column}.quiet-products .product-card__image{position:relative;aspect-ratio:1/1;overflow:hidden;margin-bottom:.85rem;border-radius:.25rem;background:#fbf4f2}.quiet-products .product-card__image img{display:block;width:100%;height:100%;padding:.7rem;object-fit:contain}.quiet-products .product-card__title{min-height:2.8em;margin:0 0 .45rem;color:#241b1a;font-size:.95rem;font-weight:600;line-height:1.4;white-space:normal}.quiet-products .product-card__price{margin:0 0 .8rem;font-size:.9rem}.quiet-products .product-card__quick-add{margin-top:auto}.quiet-products .product-card__quick-add .button{width:100%;min-height:2.7rem;background:transparent;color:#241b1a}@media(max-width:989px){.quiet-products .home-row-carousel__item,.quiet-products .home-row-carousel__track .product-card{flex-basis:calc((100% - 1.5rem)/2)}}@media(max-width:649px){.quiet-products .home-row-carousel__item,.quiet-products .home-row-carousel__track .product-card{flex-basis:78%}}
.quiet-deals{padding-block:3.75rem}.quiet-deals__banner{display:grid;min-height:18rem;grid-template-columns:minmax(0,1fr) minmax(16rem,.85fr);overflow:hidden;border-radius:.5rem;background:#f9e5e1}.quiet-deals__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,5rem)}.quiet-deals__copy h2{margin:0;color:#241b1a;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.3rem,4vw,4.3rem);font-weight:400}.quiet-deals__copy p{margin:1rem 0 1.6rem;color:#624c49}.quiet-deals__copy .button{align-self:flex-start;background:#241b1a;color:#fff}.quiet-deals__banner img{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:649px){.quiet-deals__banner{grid-template-columns:1fr}.quiet-deals__copy{padding:2rem}.quiet-deals__banner img{min-height:14rem}}

/* Mobile best-seller cards: show two balanced products per row */
@media (max-width: 649px) {
  .quiet-products .home-row-carousel__item,
  .quiet-products .home-row-carousel__track .product-card {
    flex-basis: calc((100% - 1rem) / 2) !important;
  }
  .quiet-products .product-card__image {
    aspect-ratio: 1 / 1;
  }
}
