/* IMUUDSEX — autonomous visual system for PrestaShop 9.1. */
:root {
  --dream-ink: #393334;
  --dream-muted: #8b8883;
  --dream-plum: #d42c6c;
  --dream-plum-dark: #9f214f;
  --dream-accent: #d42c6c;
  --dream-accent-dark: #b51f58;
  --dream-coral: #fe6b5b;
  --dream-blush: #f8f2f3;
  --dream-cream: #fffaf8;
  --dream-line: #eadfe5;
  --dream-white: #fff;
  --dream-success: #16845b;
  --dream-radius-sm: .55rem;
  --dream-radius: 1rem;
  --dream-radius-lg: 1.4rem;
  --dream-shadow: 0 .8rem 2.5rem rgb(57 51 52 / 8%);
  --dream-shadow-hover: 0 1.2rem 3rem rgb(212 44 108 / 16%);
  --dream-heading-font: "Iowan Old Style", Baskerville, Georgia, "Times New Roman", serif;
  --bs-primary: var(--dream-accent);
  --bs-primary-rgb: 212, 44, 108;
  --bs-body-color: var(--dream-ink);
  --bs-body-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --bs-link-color: var(--dream-accent-dark);
  --bs-link-hover-color: var(--dream-plum);
  --bs-border-color: var(--dream-line);
}

/* One visible focus border only: no stacked focus rings. */
.product-miniature__image-link,
.product-miniature__image-link.outline {
  border: 1px solid transparent !important;
}
.product-miniature__image-link:focus,
.product-miniature__image-link:focus-visible,
.product-miniature__image-link.outline:focus,
.product-miniature__image-link.outline:focus-visible {
  border-color: var(--dream-accent) !important;
  outline: 0 !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}
.page-product .product__thumbnail:focus,
.page-product .product__thumbnail:focus-visible,
.page-product .product__thumbnail.focus-ring:focus,
.page-product .product__thumbnail.focus-ring:focus-visible {
  outline: 0 !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}

/* Product description: comfortable reading rhythm and breathing space. */
.page-product #product_description .accordion-button {
  padding: 1.25rem 1.5rem !important;
  font-size: clamp(1.25rem, 2vw, 1.65rem);
  line-height: 1.25;
}
.page-product #product_description .accordion-body {
  padding: clamp(1.35rem, 2.5vw, 2rem) clamp(1.25rem, 3vw, 2.25rem) clamp(1.75rem, 3vw, 2.5rem) !important;
}
.page-product #product_description .product__description {
  max-width: 76rem;
  color: var(--dream-ink);
  font-size: clamp(.96rem, 1.1vw, 1.08rem);
  line-height: 1.75;
}
.page-product #product_description .product__description > :first-child {
  margin-top: 0 !important;
}
.page-product #product_description .product__description > :last-child {
  margin-bottom: 0 !important;
}
.page-product #product_description .product__description p {
  margin: 0 0 1.2rem;
}
.page-product #product_description .product__description h2,
.page-product #product_description .product__description h3,
.page-product #product_description .product__description h4,
.page-product #product_description .product__description strong + br {
  margin-top: 1.65rem;
}
.page-product #product_description .product__description ul,
.page-product #product_description .product__description ol {
  margin: .8rem 0 1.4rem;
  padding-inline-start: 1.65rem;
}
.page-product #product_description .product__description li {
  margin-bottom: .32rem;
  padding-inline-start: .15rem;
}
@media (max-width: 575.98px) {
  .page-product #product_description .accordion-button {
    padding: 1rem 1.1rem !important;
  }
  .page-product #product_description .accordion-body {
    padding: 1.15rem 1.1rem 1.5rem !important;
  }
}

/* Elegant previous/next navigation on product pages. */
.imuud-product-navigation {
  display: grid;
  margin: 0 0 clamp(1.25rem, 2.5vw, 2rem);
  padding: .7rem 0;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1rem;
  border-block: 1px solid var(--dream-line);
}

/* Product navigation presentation: compact paired cards. */
.page-product .imuud-product-navigation {
  padding: 0;
  gap: clamp(.8rem, 2vw, 1.5rem);
  border: 0;
}
.page-product .imuud-product-navigation__item {
  width: 100%;
  min-height: 4.25rem;
  padding: .55rem .75rem;
  gap: .65rem;
  color: #8b8589;
  background: #fff;
  border: 1px solid #e8e3e6;
}
.page-product .imuud-product-navigation__item--next { justify-self: stretch; }
.page-product .imuud-product-navigation__item strong {
  max-width: none;
  color: inherit;
  font-size: clamp(.68rem, .85vw, .78rem);
  font-weight: 550;
  letter-spacing: .005em;
  line-height: 1.35;
  white-space: normal;
}
.page-product .imuud-product-navigation__image {
  width: 3rem;
  height: 3rem;
  flex-basis: 3rem;
  padding: .1rem;
  border: 0;
  border-radius: 0;
}
.page-product .imuud-product-navigation__arrow {
  width: auto;
  height: auto;
  flex: 0 0 auto;
  color: #9c969a;
  background: transparent !important;
  border: 0;
  border-radius: 0;
  font-size: 1.55rem;
  font-weight: 300;
}
.page-product .imuud-product-navigation__item:hover {
  color: var(--dream-accent-dark);
  border-color: #d9c9d1;
}
.page-product .imuud-product-navigation__item:hover .imuud-product-navigation__arrow {
  color: var(--dream-accent);
  background: transparent;
  border-color: transparent;
}
@media (max-width: 575.98px) {
  .page-product .imuud-product-navigation { grid-template-columns: 1fr; }
  .page-product .imuud-product-navigation > span:empty { display: none; }
  .page-product .imuud-product-navigation__item strong { max-width: none; font-size: .7rem; }
}
.imuud-product-navigation__item {
  display: inline-flex;
  min-width: 0;
  padding: .35rem 0;
  align-items: center;
  gap: .7rem;
  color: var(--dream-ink);
  background: transparent;
  border: 0;
  text-decoration: none;
}
.imuud-product-navigation__item--next {
  justify-self: end;
  text-align: right;
}
.imuud-product-navigation__item small {
  display: block;
  margin-bottom: .12rem;
  color: var(--dream-muted);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.2;
  text-transform: uppercase;
}
.imuud-product-navigation__item strong {
  display: block;
  max-width: min(31vw, 26rem);
  overflow: hidden;
  font-size: clamp(.78rem, 1vw, .9rem);
  font-weight: 600;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.imuud-product-navigation__image {
  width: 2.75rem;
  height: 2.75rem;
  flex: 0 0 2.75rem;
  padding: .18rem;
  object-fit: contain;
  background: #fff;
  border: 1px solid var(--dream-line);
  border-radius: .55rem;
}
.imuud-product-navigation__arrow {
  display: grid;
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  place-items: center;
  color: var(--dream-accent);
  border: 1px solid var(--dream-line);
  border-radius: 50%;
  font-size: 1rem;
  transition: color .18s ease,border-color .18s ease,transform .18s ease;
}
.imuud-product-navigation__item:hover { color: var(--dream-accent-dark); }
.imuud-product-navigation__item:hover .imuud-product-navigation__arrow {
  color: #fff;
  background: var(--dream-accent);
  border-color: var(--dream-accent);
}
.imuud-product-navigation__item--previous:hover .imuud-product-navigation__arrow { transform: translateX(-2px); }
.imuud-product-navigation__item--next:hover .imuud-product-navigation__arrow { transform: translateX(2px); }
@media (max-width: 575.98px) {
  .imuud-product-navigation { gap: .55rem; }
  .imuud-product-navigation__item { gap: .45rem; }
  .imuud-product-navigation__item strong { max-width: 29vw; font-size: .72rem; }
  .imuud-product-navigation__image { width: 2.2rem; height: 2.2rem; flex-basis: 2.2rem; }
  .imuud-product-navigation__arrow { width: 1.75rem; height: 1.75rem; flex-basis: 1.75rem; }
}

html { scroll-behavior: smooth; }
body { background: var(--dream-white); color: var(--dream-ink); font-family: var(--bs-body-font-family); text-rendering: optimizeLegibility; }
img { height: auto; }
a { text-underline-offset: .18em; }
:focus-visible { outline: .2rem solid #f0a5c7 !important; outline-offset: .18rem; }
.container, .container-md { --bs-gutter-x: 2rem; }
.h1, .h2, .h3, h1, h2, h3 { color: var(--dream-ink); font-family: var(--dream-heading-font); font-weight: 500; letter-spacing: -.025em; }
.btn { min-height: 2.75rem; border-radius: 999px; font-weight: 700; transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease; }
.btn-primary { background: linear-gradient(100deg, var(--dream-accent), var(--dream-coral), var(--dream-accent)); background-position: 0 50%; background-size: 200% auto; border-color: transparent; box-shadow: 0 .55rem 1.25rem rgb(212 44 108 / 22%); }
.btn-primary:hover, .btn-primary:focus { background-position: 100% 50%; border-color: transparent; transform: translateY(-2px); }
.btn-outline-primary { border-color: var(--dream-accent); color: var(--dream-accent); }
.form-control, .form-select { min-height: 2.75rem; border-color: var(--dream-line); border-radius: var(--dream-radius-sm); }
.form-control:focus, .form-select:focus { border-color: var(--dream-accent); box-shadow: 0 0 0 .2rem rgb(212 44 108 / 13%); }

/* Header: content is provided through native PrestaShop hooks. */
.header-top { background: var(--dream-ink); color: #fff; font-size: .82rem; }
.header-top a, .header-top .btn { color: #fff; }
.header-top__left, .header-top__right { min-height: 2.35rem; display: flex; align-items: center; }
.header-top__right { justify-content: flex-end; gap: .2rem; }
.header-bottom { position: relative; z-index: 1020; background: rgb(255 255 255 / 96%); border-bottom: 1px solid rgb(234 223 229 / 75%); box-shadow: 0 .25rem 1rem rgb(57 51 52 / 4%); transition: box-shadow .2s ease; backdrop-filter: blur(.8rem); }
.header-bottom.is-dream-stuck { position: sticky; top: 0; box-shadow: 0 .6rem 1.8rem rgb(40 18 33 / 13%); }
.header-bottom__row { min-height: 5rem; }
.header-bottom__logo img { width: auto; max-width: 190px; max-height: 58px; }
.ps-searchbar__form { background: #f8f4f6; border: 1px solid transparent; border-radius: 999px; }
.ps-searchbar__form:focus-within { background: #fff; border-color: var(--dream-accent); box-shadow: 0 0 0 .2rem rgb(212 44 108 / 10%); }
.ps-searchbar__input { width: 100%; min-width: 0; background: transparent; border: 0; }
.header-bottom #_desktop_ps_searchbar {
  width: clamp(13rem, 18vw, 19rem);
  margin-inline-start: auto !important;
  order: 1 !important;
}
.header-bottom #_desktop_ps_searchbar .ps-searchbar { width: 100%; min-width: 0; }
.header-bottom .ps-mainmenu--desktop {
  margin-inline-start: auto;
  flex: 0 1 auto;
  order: 2;
}
.header-bottom .ps-mainmenu__tree { justify-content: flex-end; }
.ps-mainmenu__tree-link { color: var(--dream-ink); font-size: 1rem; font-weight: 550; }
.ps-mainmenu__tree-item.current .ps-mainmenu__tree-link, .ps-mainmenu__tree-link:hover { color: var(--dream-accent); }
.submenu { border: 0; border-top: 2px solid var(--dream-accent); box-shadow: var(--dream-shadow); }
.submenu__left-item[aria-selected="true"], .submenu__left-item:hover { background: var(--dream-blush); color: var(--dream-accent-dark); }
.header-block__action-btn { border-radius: 999px; }
.header-block__action-btn:hover { background: var(--dream-blush); color: var(--dream-accent); }
.header-block__badge { background: var(--dream-accent); }

/* Reassurance and home content. */
.header-nav-full-width { background: var(--dream-blush); border-bottom: 1px solid var(--dream-line); }
.header-nav-full-width .blockreassurance_product { margin: 0; }
#content-wrapper { padding-top: clamp(1.2rem, 3vw, 2.5rem); }
#index #content-wrapper { padding-top: 0; }
#index .carousel, #index .carousel-inner, #index .carousel-item { border-radius: 0 0 var(--dream-radius-lg) var(--dream-radius-lg); overflow: hidden; }
#index .carousel { position: relative; background: radial-gradient(circle at 42% 45%, #ff7c55 0, #ff446d 58%, #df1a5b 100%); }
#index .carousel::after { position: absolute; inset: 0; z-index: 0; content: ""; pointer-events: none; background: radial-gradient(circle at 78% 20%, rgb(255 255 255 / 18%), transparent 26%), radial-gradient(circle at 8% 80%, rgb(255 255 255 / 12%), transparent 22%); }
#index .carousel-caption { z-index: 1; max-width: 45rem; padding: clamp(1.2rem, 4vw, 3rem); background: transparent; border-radius: 0; text-shadow: 0 .2rem 1.2rem rgb(91 14 48 / 24%); backdrop-filter: none; }
#index .carousel-caption h2, #index .carousel-caption .h2 { color: #fff; font-family: var(--dream-heading-font); font-size: clamp(2.4rem, 6vw, 5.7rem); font-weight: 500; line-height: .98; }
#index .carousel-caption p { max-width: 37rem; color: #fff; font-size: clamp(1rem, 1.5vw, 1.25rem); }
#index .featured-products, #index .new-products, #index .best-sellers { margin-block: clamp(3rem, 6vw, 5.5rem); }
#index .featured-products > h2, #index .new-products > h2, #index .best-sellers > h2 { text-align: center; font-size: clamp(2rem, 4vw, 3.5rem); }
#custom-text { max-width: 70rem; margin: clamp(2.5rem, 5vw, 5rem) auto; padding: clamp(2rem, 6vw, 5rem); background: radial-gradient(circle at 90% 10%, rgb(254 107 91 / 12%), transparent 32%), var(--dream-blush); border: 1px solid var(--dream-line); border-radius: 2rem; }

/* Categories, filters and product lists. */
.breadcrumb { font-size: .82rem; color: var(--dream-muted); }
.category__header { margin-bottom: 2rem; }
.category__cover { overflow: hidden; border-radius: var(--dream-radius-lg); box-shadow: var(--dream-shadow); }
.category__cover-image { width: 100%; object-fit: cover; }
.category__description { max-width: 62rem; color: var(--dream-muted); line-height: 1.7; }
.subcategories__item, .subcategory { border-radius: var(--dream-radius); overflow: hidden; }
.subcategory:hover { box-shadow: var(--dream-shadow); }
.ps-facetedsearch, .left-block { border-color: var(--dream-line); border-radius: var(--dream-radius); }
.search-filters__header { color: var(--dream-plum-dark); }
.products-selection { border-block-color: var(--dream-line); }
.product-miniature { height: 100%; }
.product-miniature__inner { height: 100%; overflow: hidden; background: #fff; border: 1px solid transparent; border-radius: var(--dream-radius); box-shadow: 0 .5rem 2rem rgb(57 51 52 / 7%); transition: border-color .2s ease, box-shadow .2s ease; }
.product-miniature__inner:hover { border-color: #d9b3c6; box-shadow: var(--dream-shadow-hover); transform: none; }
.product-miniature__top { background: var(--dream-blush); }
.product-miniature__image { aspect-ratio: 1 / 1; object-fit: contain; }
.product-miniature__bottom { padding: 1rem; }
.product-miniature__title { display: -webkit-box; min-height: 2.8em; overflow: hidden; color: var(--dream-ink); font-weight: 550; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.product-miniature__title:hover { color: var(--dream-accent); }
.product-miniature__price { color: var(--dream-accent-dark); font-size: 1.2rem; font-weight: 800; }
.product-miniature__regular-price { color: var(--dream-muted); }
.product-miniature__actions { margin-top: auto; }
.product-miniature__add { border-radius: 999px; }
.product-flag { border-radius: 999px; font-size: .72rem; font-weight: 800; }

/* Product: native gallery, variants, cart form and JSON-LD stay unchanged. */
.product__container { gap: clamp(1.5rem, 4vw, 4.5rem); }
.product__left { align-self: start; }
.product__right { padding: clamp(1.2rem, 3vw, 2.25rem); border: 1px solid var(--dream-line); border-radius: var(--dream-radius-lg); box-shadow: var(--dream-shadow); }
.product__name { font-size: clamp(1.55rem, 3vw, 2.4rem); line-height: 1.16; }
.product__manufacturer a { color: var(--dream-accent); font-weight: 700; }
.product-price { color: var(--dream-accent-dark); font-size: clamp(1.65rem, 3vw, 2.3rem); font-weight: 850; }
.product__description-short { color: var(--dream-muted); line-height: 1.65; }
.product-variants-item { padding-block: .65rem; border-top: 1px solid var(--dream-line); }
.product-add-to-cart { padding-top: 1rem; }
.product-add-to-cart .add-to-cart { min-height: 3.25rem; padding-inline: 1.5rem; }
.product__bottom { margin-top: clamp(2rem, 5vw, 4rem); }
.product__accordion { border: 1px solid var(--dream-line); border-radius: var(--dream-radius); overflow: hidden; }
.accordion-button:not(.collapsed) { background: var(--dream-blush); color: var(--dream-plum); }
.accordion-button:focus { box-shadow: inset 0 0 0 2px rgb(212 44 108 / 15%); }

@media (min-width: 992px) {
  .page-product .product__carousel .carousel-item {
    text-align: center;
    background: #fff;
  }
  .page-product .product__carousel .carousel-item > picture {
    display: flex;
    min-height: min(62vh, 38rem);
    align-items: center;
    justify-content: center;
  }
  .page-product .product__carousel .carousel-item > picture > img {
    width: auto !important;
    max-width: 100% !important;
    height: min(62vh, 38rem) !important;
    max-height: calc(100vh - 15rem) !important;
    margin-inline: auto;
    object-fit: contain;
  }
}

/* Product gallery must always render above its Bootstrap backdrop. */
.product-images-modal { z-index: 1090 !important; }
.product-images-modal.show {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.product-images-modal .modal-dialog {
  position: relative;
  z-index: 1;
}
.product-images-modal .modal-content {
  visibility: visible !important;
  opacity: 1 !important;
  background: #fff;
}
.modal-backdrop.show { z-index: 1080 !important; }

/* Cart confirmation must stay above the shared Bootstrap backdrop. */
#blockcart-modal,
.blockcart-modal {
  z-index: 1095 !important;
}
#blockcart-modal.show,
.blockcart-modal.show {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
#blockcart-modal .modal-dialog,
.blockcart-modal .modal-dialog {
  position: relative;
  z-index: 1;
}
#blockcart-modal .modal-content,
.blockcart-modal .modal-content {
  visibility: visible !important;
  opacity: 1 !important;
}
.imuud-shipping-pending{display:inline-flex;align-items:center;justify-content:flex-end;gap:.4rem;color:var(--dream-muted);font-size:.78rem;font-weight:600;white-space:nowrap}
.imuud-shipping-pending i{display:inline-block;width:.8rem;height:.8rem;border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:imuud-shipping-spin .75s linear infinite}
@keyframes imuud-shipping-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.imuud-shipping-pending i{animation-duration:1.8s}}

/* Simplified product information and permanently visible description. */
.page-product .product__name {
  font-size: clamp(1.25rem, 2vw, 1.75rem) !important;
  line-height: 1.25;
}
.imuud-product-reference {
  display: flex;
  margin: .3rem 0 1rem;
  align-items: baseline;
  gap: .35rem;
  color: var(--dream-muted);
  font-size: .76rem;
}
.imuud-product-reference strong { color: var(--dream-ink); font-weight: 650; }
.page-product .product__description-short,
.page-product .product__description-short * { text-transform: none !important; }
.page-product .product__bottom { display: block !important; }
.page-product .product__bottom-left,
.page-product .product__bottom-right { width: 100%; margin-bottom: 2rem; }
.page-product .product__accordion {
  overflow: visible;
  border: 0;
  border-radius: 0;
}
.page-product .imuud-product-description {
  width: 100%;
  padding: 0;
  background: transparent;
  border: 0;
}
.page-product .imuud-product-description > h2 {
  margin: 0 0 1.15rem;
  padding: 0 0 .7rem;
  color: var(--dream-ink);
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--dream-line);
  font-size: clamp(1.3rem, 2vw, 1.7rem);
}
.page-product .imuud-product-description .product__description {
  max-width: none;
  padding: 0;
}
.page-product .imuud-product-details-data { display: none !important; }
.page-product .product__quantity .quantity-button__group,
.page-product .product__quantity .quantity-button__group .btn {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
.page-product .product__quantity .quantity-button__group .btn:hover,
.page-product .product__quantity .quantity-button__group .btn:focus {
  color: var(--dream-accent) !important;
  background: transparent !important;
  transform: none !important;
}
.page-product .ps-categoryproducts {
  margin-top: 2.5rem !important;
}
.product__add-to-cart-button,
.product__add-to-cart-button:hover,
.product__add-to-cart-button:focus,
.product-miniature__add,
.product-miniature__add:hover,
.product-miniature__add:focus {
  transform: none !important;
  translate: none !important;
}

/* Native PrestaShop checkout presentation. */
#checkout { background: #fbf8fa; }
#checkout .checkout-grid { --bs-gutter-x: clamp(1rem, 3vw, 2.5rem); align-items: start; }
#checkout .checkout-step { margin-bottom: 1rem; overflow: hidden; background: #fff; border: 1px solid var(--dream-line); border-radius: var(--dream-radius); box-shadow: 0 .25rem 1rem rgb(76 21 59 / 4%); }
#checkout .checkout-step.-current { border-color: #d9a0bb; box-shadow: var(--dream-shadow); }
#checkout .checkout-step__title { color: var(--dream-plum-dark); }
#checkout .checkout-grid__aside-wrapper { position: sticky; top: 1.25rem; }
#checkout .checkout__summary-accordion-item, #checkout .cart-summary { overflow: hidden; background: #fff; border-color: var(--dream-line); border-radius: var(--dream-radius); }
#checkout .cart-summary__total { background: var(--dream-blush); }
#checkout .cart-summary__line--bold { color: var(--dream-plum-dark); }
#checkout .continue, #checkout .payment-confirmation button { width: 100%; min-height: 3.1rem; }
#checkout .checkout-navigation { background: var(--dream-plum-dark); color: #fff; }

/* Full-width native PrestaShop slider, presented as the IMUUDSEX hero. */
#index .page-content--home > .ps-imageslider:first-child {
  width: 100vw;
  max-width: none;
  margin-inline: calc(50% - 50vw);
  margin-bottom: clamp(2.5rem, 6vw, 5.5rem);
}
#index .ps-imageslider .carousel,
#index .ps-imageslider .carousel-inner,
#index .ps-imageslider .carousel-item,
#index .ps-imageslider__figure {
  min-height: clamp(34rem, 76vh, 56rem);
}
#index .ps-imageslider__figure {
  position: relative;
  margin: 0;
  overflow: hidden;
  background: radial-gradient(circle at 50% 42%, #c3396e 0 19%, transparent 20%), linear-gradient(135deg, #d92569, #ff5b78);
}
#index .ps-imageslider__figure::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgb(52 10 35 / 45%), transparent 58%), radial-gradient(circle at 50% 25%, transparent 0 42%, rgb(64 3 31 / 18%) 100%);
  content: "";
  pointer-events: none;
}
#index .ps-imageslider__figure > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
#index .ps-imageslider__figcaption {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex !important;
  max-width: 48rem;
  margin: 0;
  padding: clamp(3rem, 8vw, 8rem) max(1.25rem, calc((100vw - 82rem) / 2));
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  color: #fff;
  text-align: left;
  background: transparent;
}
#index .ps-imageslider__figcaption h2 {
  max-width: 12ch;
  margin: 0;
  color: #fff;
  font-size: clamp(2.8rem, 8vw, 7rem);
  font-weight: 800;
  line-height: .9;
  letter-spacing: -.055em;
  text-shadow: 0 .25rem 1.75rem rgb(47 4 27 / 25%);
}
#index .ps-imageslider__figcaption p {
  max-width: 34rem;
  margin: 1.25rem 0 0;
  color: #fff;
  font-size: clamp(1rem, 2vw, 1.4rem);
  line-height: 1.45;
}
#index .ps-imageslider .carousel-control-prev,
#index .ps-imageslider .carousel-control-next { z-index: 3; width: clamp(3rem, 7vw, 6rem); }
#index .ps-imageslider .carousel-indicators { z-index: 3; }

/* Customer login and reassurance modules above the footer. */
.imuudsex-account-zone {
  position: relative;
  padding: clamp(3rem, 7vw, 5.5rem) 0 clamp(2rem, 5vw, 4rem);
  background: linear-gradient(to bottom, var(--dream-accent) 0 clamp(8rem, 16vw, 11rem), #fff clamp(8rem, 16vw, 11rem));
}
.imuudsex-account-card {
  position: relative;
  z-index: 1;
  max-width: 64rem;
  margin: 0 auto;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgb(74 24 51 / 8%);
  border-radius: clamp(.85rem, 2vw, 1.25rem);
  box-shadow: 0 1.25rem 3rem rgb(61 14 42 / 20%);
}
.imuudsex-account-card > h2 {
  margin: 0;
  padding: clamp(1.6rem, 4vw, 2.25rem) 1.25rem 1rem;
  color: var(--dream-ink);
  font-size: clamp(1.35rem, 3vw, 1.85rem);
  font-weight: 800;
  text-align: center;
  text-transform: uppercase;
}
.imuudsex-login-form {
  display: grid;
  padding: .5rem clamp(1.25rem, 4vw, 2.6rem) clamp(1.5rem, 4vw, 2rem);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 1rem;
}
.imuudsex-login-field .form-control {
  min-height: 3.65rem;
  padding-inline: 1.25rem;
  background: #f5f3f6;
  border: 1px solid #ded8de;
  border-radius: .25rem;
  font-size: 1rem;
}
.imuudsex-login-field .form-control:focus { background: #fff; border-color: var(--dream-accent); box-shadow: 0 0 0 .2rem rgb(212 44 108 / 14%); }
.imuudsex-login-submit { min-height: 3.65rem; padding-inline: clamp(1.5rem, 4vw, 2.6rem); border-radius: 0; text-transform: uppercase; }
.imuudsex-account-links {
  display: flex;
  padding: 1.15rem 1.5rem;
  justify-content: center;
  gap: clamp(1rem, 4vw, 2.4rem);
  background: #f8f7f9;
  border-top: 1px solid #eee9ed;
}
.imuudsex-account-links a { color: var(--dream-ink); font-weight: 700; }
.imuudsex-account-links a:hover { color: var(--dream-accent); }
.imuudsex-account-links a span { display: inline-grid; width: 1.25rem; height: 1.25rem; margin-right: .35rem; place-items: center; color: #fff; background: var(--dream-accent); border-radius: 50%; }
.imuudsex-account-signed { display: flex; padding: clamp(1.5rem, 4vw, 2.5rem); align-items: center; justify-content: space-between; gap: 1.5rem; }
.imuudsex-account-kicker { margin: 0 0 .25rem; color: var(--dream-accent); font-size: .78rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.imuudsex-account-signed h2 { margin: 0; color: var(--dream-ink); }
.imuudsex-account-actions { display: flex; gap: .75rem; }
.imuudsex-trust-strip { background: linear-gradient(110deg, #9f164d, var(--dream-accent) 48%, #f04a72); color: #fff; }
.imuudsex-trust-strip__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.imuudsex-trust-item { display: flex; min-height: 6.25rem; padding: 1.25rem; align-items: center; justify-content: center; gap: .75rem; border-right: 1px solid rgb(255 255 255 / 18%); font-weight: 750; text-align: center; }
.imuudsex-trust-item:last-child { border-right: 0; }
.imuudsex-trust-item .material-icons { font-size: 1.85rem; }

/* Footer. */
.footer__before { margin-top: clamp(3rem, 6vw, 6rem); background: var(--dream-blush); border-top: 1px solid var(--dream-line); }
.footer__main { background: var(--dream-ink); color: #e7e0e1; }
.footer__main h2, .footer__main h3, .footer__main .h3, .footer__main .h4 { color: #fff; }
.footer__main a { color: #eadde7; }
.footer__main a:hover { color: #fff; }
.footer__main-top { padding-block: clamp(2.25rem, 5vw, 4rem); }
.footer__main-bottom { border-top-color: rgb(255 255 255 / 14%); }
.footer__copyright { color: #cbbdca; }

@media (min-width: 992px) {
  .product__left { position: sticky; top: 1.25rem; }
}

@media (max-width: 991.98px) {
  .header-bottom.is-dream-stuck { position: relative; }
  #checkout .checkout-grid__aside-wrapper { position: static; margin-top: 1.5rem; }
  .product__right { padding: 1.15rem; }
}

@media (max-width: 767.98px) {
  .container, .container-md { --bs-gutter-x: 1.25rem; }
  .header-bottom__row { min-height: 4.3rem; }
  .header-bottom__logo img { max-width: 145px; max-height: 48px; }
  .product-miniature__bottom { padding: .8rem; }
  .product-miniature__add-text { display: none; }
  #index .carousel-caption { margin: .75rem; }
  #index .ps-imageslider .carousel,
  #index .ps-imageslider .carousel-inner,
  #index .ps-imageslider .carousel-item,
  #index .ps-imageslider__figure { min-height: 32rem; }
  #index .ps-imageslider__figcaption { padding: 2.25rem 1.25rem 4.5rem; }
  #index .ps-imageslider__figcaption h2 { font-size: clamp(2.5rem, 16vw, 4.75rem); }
  .imuudsex-login-form { grid-template-columns: 1fr; }
  .imuudsex-account-links { align-items: flex-start; flex-direction: column; gap: .8rem; }
  .imuudsex-account-signed { align-items: stretch; flex-direction: column; }
  .imuudsex-account-actions { flex-direction: column; }
  .imuudsex-trust-strip__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .imuudsex-trust-item { min-height: 5.5rem; padding: 1rem .5rem; flex-direction: column; border-bottom: 1px solid rgb(255 255 255 / 18%); font-size: .86rem; }
  .imuudsex-trust-item:nth-child(2) { border-right: 0; }
  .imuudsex-trust-item:nth-child(n+3) { border-bottom: 0; }
}

/* IMUUDSEX 3.2.2 — compact, full-width category catalogue. */
.page-category #left-column { display: none !important; }
.page-category #center-column {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}
.page-category .breadcrumb { margin-bottom: .85rem; }
.page-category .page-header { margin-bottom: 1rem; }
.page-category .subcategory { margin: 0 0 1.5rem; overflow: visible; border-radius: 0; }
.page-category .subcategory:hover { box-shadow: none; }
.page-category .subcategory__list,
.page-category .subcategory__list--with-images {
  display: flex;
  margin: 0;
  padding: .65rem 0;
  align-items: center;
  flex-wrap: wrap;
  gap: .45rem .6rem;
  border-block: 1px solid var(--dream-line);
}
.page-category .subcategory__link,
.page-category .subcategory__link--with-image {
  display: inline-flex;
  width: auto;
  min-height: 0;
  padding: .38rem .72rem;
  align-items: center;
  color: var(--dream-ink);
  background: #fff;
  border: 1px solid #eadfe4;
  border-radius: 999px;
  font-size: .76rem;
  font-weight: 650;
  line-height: 1.2;
  transition: color .18s ease, border-color .18s ease, transform .18s ease;
}
.page-category .subcategory__link:hover {
  color: var(--dream-accent-dark);
  border-color: var(--dream-accent);
  transform: translateY(-1px);
}
.page-category .subcategory__link picture,
.page-category .subcategory__thumbnail { display: none !important; }
.page-category .products__selection { margin-bottom: 1.15rem; padding-block: .75rem; }
.page-category .products__sort-label { font-size: .78rem; }
.page-category .products__sort-dropdown-button { min-height: 2.35rem; font-size: .78rem; }
.page-category .products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.35rem;
}
.page-category .product-miniature { min-width: 0; margin: 0; }
.page-category .product-miniature__bottom { padding: .9rem; }
.page-category .product-miniature__title {
  min-height: 2.7em;
  font-size: .75rem;
  font-weight: 500;
  letter-spacing: -.005em;
  line-height: 1.38;
}
.page-category .product-miniature__prices {
  display: flex;
  min-height: 2rem;
  margin-top: .45rem;
  align-items: center;
  gap: .45rem;
}
.page-category .product-miniature__price { font-size: 1.02rem; }
.page-category .product-miniature__prices .product-miniature__quickview-button {
  display: inline-flex;
  width: 1.9rem !important;
  height: 1.9rem !important;
  margin-inline-start: auto;
  padding: 0 !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 1.9rem;
}
.page-category .product-miniature__prices .product-miniature__quickview-button .material-icons {
  margin: 0;
  font-size: 1.15rem;
}
.page-category .product-miniature__form { align-items: center; gap: .45rem; }
.page-category .quantity-button,
.page-category .quantity-button__group {
  width: auto;
  padding: 0;
  flex-wrap: nowrap;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.page-category .quantity-button__group .btn {
  width: 1.35rem;
  min-width: 1.35rem;
  height: 1.8rem;
  min-height: 1.8rem;
  padding: 0;
  color: var(--dream-ink);
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
.page-category .quantity-button__group .btn:hover,
.page-category .quantity-button__group .btn:focus { color: var(--dream-accent); transform: none; }
.page-category .quantity-button__group .btn .material-icons { font-size: .95rem; }
.page-category .quantity-button__group .form-control {
  width: 1.7rem;
  min-width: 1.7rem;
  max-width: 1.7rem;
  height: 1.8rem;
  min-height: 1.8rem;
  padding: .1rem;
  border: 1px solid #e4d9df;
  border-radius: .35rem !important;
  font-size: .75rem;
  text-align: center;
  box-shadow: none;
}
.page-category .product-miniature__add {
  min-height: 2.2rem;
  padding: .42rem .7rem;
  gap: .32rem;
  border-radius: 999px;
  font-size: .73rem;
}
.page-category .product-miniature__add .material-icons { font-size: 1rem; }
.page-category .product-miniature__add-text { display: inline !important; }

@media (max-width: 1199.98px) {
  .page-category .products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .page-category .products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
  .page-category .product-miniature__bottom { padding: .7rem; }
  .page-category .product-miniature__add-text { display: inline; }
}
@media (max-width: 419.98px) {
  .page-category .products { grid-template-columns: minmax(0, 1fr); }
}

/* IMUUDSEX 3.2.6 — definitive compact product-card controls. */
.product-miniature__top { position: relative; }
.product-miniature__top .product-miniature__quickview-button,
.product-miniature__top .product-miniature__quickview-touch {
  position: absolute !important;
  top: .7rem !important;
  right: .7rem !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 4;
  display: inline-flex !important;
  width: 2rem !important;
  min-width: 2rem !important;
  height: 2rem !important;
  min-height: 2rem !important;
  margin: 0 !important;
  padding: 0 !important;
  align-items: center;
  justify-content: center;
  color: var(--dream-accent-dark) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.product-miniature__top .product-miniature__quickview-button .material-icons,
.product-miniature__top .product-miniature__quickview-touch .material-icons {
  margin: 0 !important;
  font-size: 1.15rem !important;
}
.product-miniature__top .product-miniature__quickview-button span { display: none !important; }
.product-miniature__title {
  min-height: 2.65em !important;
  font-size: .76rem !important;
  font-weight: 500 !important;
  letter-spacing: -.006em;
  line-height: 1.36 !important;
}
.product-miniature__form { display: flex !important; align-items: center !important; gap: .45rem !important; }
.product-miniature .quantity-button,
.product-miniature .quantity-button__group {
  width: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  gap: .08rem !important;
  flex: 0 0 auto !important;
  flex-wrap: nowrap !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.product-miniature .quantity-button__group .btn {
  width: 1.45rem !important;
  min-width: 1.45rem !important;
  max-width: 1.45rem !important;
  height: 1.9rem !important;
  min-height: 1.9rem !important;
  padding: 0 !important;
  color: var(--dream-ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
.product-miniature .quantity-button__group .btn:hover,
.product-miniature .quantity-button__group .btn:focus {
  color: var(--dream-accent) !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}
.product-miniature .quantity-button__group .btn .material-icons { font-size: 1rem !important; }
.product-miniature .quantity-button__group .form-control {
  width: 1.8rem !important;
  min-width: 1.8rem !important;
  max-width: 1.8rem !important;
  height: 1.9rem !important;
  min-height: 1.9rem !important;
  padding: .1rem !important;
  border: 1px solid #e8dde2 !important;
  border-radius: .35rem !important;
  font-size: .72rem !important;
  text-align: center;
  box-shadow: none !important;
}
.product-miniature__add {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 2.25rem !important;
  padding: .45rem .78rem !important;
  align-items: center;
  justify-content: center;
  gap: .32rem;
  flex: 1 1 auto;
  border-radius: 999px !important;
  font-size: .72rem !important;
  line-height: 1;
  white-space: nowrap;
}
.product-miniature__add .material-icons { margin: 0 !important; font-size: 1rem !important; }
.product-miniature__add-text { display: inline !important; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* IMUUDSEX 1.3 — balanced storefront home and footer. */
#index .product-miniature__quickview-button,
.product-miniature__quickview-button {
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  padding: .35rem 0 !important;
  color: var(--dream-accent-dark) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.product-miniature__quickview-button:hover,
.product-miniature__quickview-button:focus {
  color: var(--dream-accent) !important;
  background: transparent !important;
  box-shadow: none !important;
}
.product-miniature__quickview-button .material-icons { margin-inline-end: .3rem; font-size: 1.15rem; }
.imuud-footer-main { width: 100%; margin: 0; overflow: hidden; }
.imuud-footer-main > .container { width: min(calc(100% - 2rem), 82.5rem); max-width: 82.5rem; margin-inline: auto; padding-inline: 0; }
.imuud-footer-newsletter { width: 100%; margin: 0; }
.imuud-yoga-footer { width: 100%; margin: 0; }
.imuud-language-flags { display: flex; align-items: center; gap: .45rem; margin-inline-end: 40px; padding: .2rem 0; }
.imuud-language-flag { display: inline-flex; padding: .15rem; opacity: .62; border: 1px solid transparent; border-radius: .25rem; transition: opacity .2s ease, transform .2s ease, border-color .2s ease; }
.imuud-language-flag:hover, .imuud-language-flag.is-current { opacity: 1; border-color: rgb(212 44 108 / 35%); transform: translateY(-1px); }
.imuud-language-flag img { display: block; width: 24px; height: 16px; object-fit: cover; border-radius: 2px; }
#_desktop_ps_shoppingcart .header-block__action-btn { position: relative; display: inline-flex; min-width: 3rem; min-height: 2.65rem; padding: .45rem .9rem .45rem 1rem !important; align-items: center; justify-content: center; gap: .5rem; color: #fff !important; background: var(--dream-accent); border-radius: 999px; }
#_desktop_ps_shoppingcart .header-block__icon, #_desktop_ps_shoppingcart .header-block__title { color: #fff !important; }
#_desktop_ps_shoppingcart .header-block__badge { color: var(--dream-accent-dark); background: #fff; }
#_desktop_ps_shoppingcart .imuud-cart-bag { margin-inline-end: .15rem; font-size: 1.45rem; }
#_desktop_ps_shoppingcart .header-block { padding-inline: .4rem; }
#_desktop_ps_shoppingcart .header-block__action-btn { margin-inline: .2rem; transition: transform .2s ease, background-color .2s ease; }
#_desktop_ps_shoppingcart .header-block__action-btn:hover { color: #fff !important; background: var(--dream-accent-dark); box-shadow: none !important; transform: scale(1.06); }
#_desktop_ps_customersignin .header-block__action-btn { color: #fff !important; background: transparent !important; border: 0 !important; box-shadow: none !important; transition: transform .2s ease, opacity .2s ease; }
#_desktop_ps_customersignin .header-block__icon { color: #fff !important; font-size: 1.45rem; }
#_desktop_ps_customersignin .header-block__title { color: #fff !important; }
#_desktop_ps_customersignin .header-block__action-btn:hover { color: #fff !important; background: transparent !important; box-shadow: none !important; opacity: .82; transform: scale(1.06); }
#_desktop_ps_customersignin .header-block__action-btn:hover * { color: inherit !important; }
.ps-searchbar__input:focus, .ps-searchbar__input:focus-visible, .ps-searchbar__form:focus-within { outline: 0 !important; border-color: transparent !important; box-shadow: none !important; }
.imuud-newsletter { padding: clamp(3rem, 6vw, 5rem) 1rem; background: linear-gradient(135deg, #f8edf2, #fff8fa); }
.imuud-newsletter > .container { max-width: 62rem; padding: 0; }
.imuud-newsletter__inner { padding: 0; text-align: center; background: transparent; border: 0; box-shadow: none; }
.imuud-newsletter__title { margin: 0 0 1.25rem; color: var(--dream-ink); font-family: var(--dream-heading-font); font-size: clamp(1.35rem, 2.4vw, 2rem); line-height: 1.2; }
.imuud-newsletter__form { max-width: 48rem; margin-inline: auto; }
.imuud-newsletter__form .d-flex { padding: .4rem; gap: .4rem !important; background: rgb(255 255 255 / 72%); border: 1px solid rgb(255 255 255 / 92%); border-radius: 999px; box-shadow: 0 .8rem 2.5rem rgb(95 30 61 / 8%); backdrop-filter: blur(14px); }
.imuud-newsletter__form input[type="email"] { min-height: 3rem; padding-inline: 1.25rem; font-size: .92rem; background: transparent; border: 0; box-shadow: none; }
.imuud-newsletter__form input[type="email"]:focus { outline: 0; border: 0; box-shadow: none; }
.imuud-newsletter__form input[type="submit"] { min-height: 3rem; padding-inline: 1.45rem; font-size: .88rem; border-radius: 999px; }
.imuud-newsletter__form input[type="submit"],
.imuud-newsletter__form input[type="submit"]:hover,
.imuud-newsletter__form input[type="submit"]:focus {
  transform: none !important;
  translate: none !important;
}
.imuud-newsletter__conditions { max-width: 43rem; margin: .75rem auto 0; color: var(--dream-muted); font-size: .72rem; line-height: 1.55; }
.imuud-newsletter__privacy { display:flex;max-width:43rem;margin:.7rem auto 0;align-items:flex-start;justify-content:center;gap:.55rem;color:var(--dream-muted);font-size:.72rem;line-height:1.5;text-align:left;cursor:pointer }.imuud-newsletter__privacy input{width:1rem;height:1rem;margin-top:.05rem;flex:0 0 1rem;accent-color:var(--dream-accent)}.imuud-newsletter__privacy a{color:var(--dream-accent-dark);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.imuud-top-message { font-size: .78rem; letter-spacing: .01em; }
.imuud-top-message .material-icons { margin-inline-end: .35rem; font-size: .9rem; vertical-align: -.12rem; }
#index .ps-mainmenu__submenu, #index .ps-mainmenu__dropdown, #index .dropdown-menu { color: var(--dream-ink) !important; background: #fff !important; }
#index .ps-mainmenu__submenu a, #index .ps-mainmenu__dropdown a, #index .dropdown-menu a { color: var(--dream-ink) !important; }
#index .ps-mainmenu__submenu a:hover, #index .ps-mainmenu__dropdown a:hover, #index .dropdown-menu a:hover { color: var(--dream-accent-dark) !important; background: var(--dream-blush) !important; }
#index .ps-mainmenu .submenu { color: #171416 !important; background: rgb(255 255 255 / 92%) !important; border: 1px solid rgb(255 255 255 / 85%); box-shadow: 0 1.25rem 3rem rgb(46 19 33 / 14%); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
#index .ps-mainmenu .submenu__left, #index .ps-mainmenu .submenu__right, #index .ps-mainmenu .submenu__right-items { color: #171416 !important; background: transparent !important; }
#index .ps-mainmenu .submenu a, #index .ps-mainmenu .submenu button, #index .ps-mainmenu .submenu__left-item { color: #171416 !important; }
#index .ps-mainmenu .submenu a:hover, #index .ps-mainmenu .submenu button:hover, #index .ps-mainmenu .submenu__left-item:hover { color: #8f1743 !important; background: rgb(248 237 242 / 78%) !important; }
@media (max-width: 767.98px) { .imuud-newsletter__form .d-flex { border-radius: 1.15rem; } .imuud-newsletter__form input[type="submit"] { padding-inline: 1rem; } }

/* IMUUDSEX base layout: header actions share one optical baseline. */
#_desktop_ps_customersignin,
#_desktop_ps_shoppingcart,
#_desktop_ps_customersignin .ps-customersignin,
#_desktop_ps_shoppingcart .ps-shoppingcart,
#_desktop_ps_customersignin .imuud-account-menu {
  display: flex !important;
  height: 3rem !important;
  align-items: center !important;
  justify-content: center !important;
}
@media (min-width: 992px) {
  #_desktop_ps_customersignin .imuud-account-menu > summary {
    position: relative !important;
    top: -.5rem !important;
  }
}

/* IMUUDSEX base newsletter: a single white field, without an outer pill. */
.imuud-newsletter__form .d-flex {
  padding: 0 !important;
  gap: .65rem !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
.imuud-newsletter__form input[type="email"] {
  min-height: 3.5rem !important;
  padding-inline: 1.35rem !important;
  background: #fff !important;
  border: 1px solid var(--dream-line) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}
.imuud-newsletter__form input[type="email"]:focus {
  border-color: var(--dream-accent) !important;
  outline: 0 !important;
  box-shadow: none !important;
}
.imuud-newsletter__form input[type="email"]:focus::placeholder {
  color: transparent !important;
}

/* IMUUDSEX vertical scroll progress, aligned with the WhatsApp axis. */
.imuud-scroll-progress {
  position: fixed !important;
  z-index: 1041 !important;
  right: 1.15rem !important;
  bottom: 5.35rem !important;
  display: flex !important;
  width: 3.25rem !important;
  height: 8rem !important;
  padding: 0 !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-direction: column !important;
  gap: .65rem !important;
  color: var(--dream-accent, #d62868) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  writing-mode: vertical-rl !important;
  text-decoration: none !important;
  transform: none !important;
}
.imuud-scroll-progress.is-visible{opacity:1!important;visibility:visible!important}
.imuud-scroll-progress [data-imuud-scroll-label] {
  display: block !important;
  color: inherit !important;
  font-size: .7rem !important;
  font-weight: 800 !important;
  letter-spacing: .13em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}
.imuud-scroll-progress i {
  position: relative !important;
  display: block !important;
  width: 1px !important;
  height: 3.5rem !important;
  overflow: hidden !important;
  background: rgb(214 40 104 / 28%) !important;
}
.imuud-scroll-progress i b {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  display: block !important;
  width: 100% !important;
  height: calc(var(--scroll-progress, 0) * 100%) !important;
  background: var(--dream-accent, #d62868) !important;
}
.imuud-scroll-progress:hover,
.imuud-scroll-progress:focus-visible {
  color: var(--dream-accent-dark, #b91f59) !important;
  background: transparent !important;
}
@media (max-width: 575.98px) {
  .imuud-newsletter__form .d-flex {
    align-items: stretch !important;
    flex-direction: column !important;
  }
  .imuud-scroll-progress {
    right: .85rem !important;
    bottom: 4.5rem !important;
    width: 3rem !important;
    height: 7.25rem !important;
  }
}

/* Slightly larger account glyph while preserving its aligned box. */
#_desktop_ps_customersignin .header-block__icon,
#_mobile_ps_customersignin .header-block__icon {
  font-size: 2.4rem !important;
  line-height: 1 !important;
  transform: scaleY(1.10) !important;
  transform-origin: top center !important;
}
#index .page-content--home { overflow: hidden; }
#index .page-content--home > section:not(.imuudsex-hero) {
  width: min(calc(100% - 2.5rem), 82.5rem);
  margin-inline: auto;
}
#index .page-content--home > .ps-featuredproducts,
#index .page-content--home > .ps-newproducts,
#index .page-content--home > .ps-bestsellers {
  margin-block: clamp(4rem, 8vw, 7rem);
}
#index .ps-featuredproducts > h2,
#index .ps-newproducts > h2,
#index .ps-bestsellers > h2 {
  margin-bottom: clamp(1.75rem, 4vw, 3rem);
  font-size: clamp(2rem, 4vw, 3.35rem);
  line-height: 1.05;
  text-align: center;
}
#index .ps-featuredproducts > h2::after,
#index .ps-newproducts > h2::after,
#index .ps-bestsellers > h2::after {
  display: block;
  width: 3rem;
  height: .2rem;
  margin: 1rem auto 0;
  background: linear-gradient(90deg, var(--dream-accent), var(--dream-coral));
  border-radius: 99px;
  content: "";
}
#index .products { align-items: stretch; }
#index .product-miniature { margin-bottom: 0; }
#index .product-miniature__inner { border-color: #eee6ea; box-shadow: 0 .6rem 2rem rgb(57 24 42 / 7%); }
#index .product-miniature__top { aspect-ratio: 1 / 1; padding: clamp(.6rem, 1.5vw, 1rem); }
#index .product-miniature__image { width: 100%; height: 100%; object-fit: contain; }
#index .product-miniature__bottom { display: flex; min-height: 11.5rem; padding: 1.15rem; flex-direction: column; }
#index .product-miniature__title { min-height: 2.8em; margin-bottom: .7rem; }
#index .product-miniature__actions { padding-top: .75rem; }
#index .all-product-link { display: flex; width: max-content; margin: 2.25rem auto 0; padding-inline: 1.4rem; border-radius: 999px; }

.footer { margin-top: 0; }
.footer__before {
  margin-top: 0;
  padding-block: clamp(2.5rem, 5vw, 4rem);
  background: #f9f3f6;
  border-top: 1px solid #efe3e9;
}
.footer__before > .container,
.footer__before .block_newsletter,
.footer__before .block-social { max-width: 82.5rem; margin-inline: auto; }
.footer__before .block_newsletter { display: grid; align-items: center; grid-template-columns: minmax(0, .8fr) minmax(20rem, 1.2fr); gap: clamp(1.5rem, 5vw, 5rem); }
.footer__before .block_newsletter > .row { display: contents; }
.footer__before .block_newsletter p { margin-bottom: .4rem; color: var(--dream-muted); }
.footer__before .block_newsletter form { margin: 0; }
.footer__before .block_newsletter .input-wrapper { overflow: hidden; background: #fff; border: 1px solid #e5d8df; border-radius: 999px; box-shadow: 0 .5rem 1.5rem rgb(57 24 42 / 6%); }
.footer__before .block_newsletter input[type="email"] { min-height: 3.4rem; padding-inline: 1.35rem; background: transparent; border: 0; }
.footer__before .block_newsletter button { min-height: 3.4rem; padding-inline: 1.5rem; border-radius: 999px; }
.footer__before .block_newsletter { display:block; max-width:48rem; text-align:center; }
.footer__before .block_newsletter > .row { display:block; }
.footer__before .block_newsletter .imuud-newsletter-heading h4 { margin:0 0 1.25rem; text-align:center; }
.footer__before .block_newsletter .imuud-newsletter-form-row { display:flex; align-items:center; justify-content:center; gap:1.35rem; }
.footer__before .block_newsletter .imuud-newsletter-form-row .input-wrapper { display:flex; width:min(100%,22rem); min-width:0; flex:0 1 22rem; border-radius:999px; }
.footer__before .block_newsletter .imuud-newsletter-form-row input[type="email"] { width:100%; }
.footer__before .block_newsletter .imuud-newsletter-form-row input[type="email"]::placeholder { font-size:.84rem; }
.footer__before .block_newsletter .imuud-newsletter-form-row input[type="email"]:focus::placeholder { color:transparent; opacity:0; }
.footer__before .block_newsletter .imuud-newsletter-form-row .btn { min-height:3.4rem; padding-inline:1.55rem; flex:0 0 auto; border-radius:999px; }
.footer__before .block_newsletter .imuud-newsletter-consent { display:flex; width:22rem; max-width:100%; margin:1rem 0 0 calc(50% - 14rem); align-items:center; gap:.55rem; text-align:left; font-size:.72rem; cursor:pointer; }
.footer__before .block_newsletter .imuud-newsletter-consent input { width:1rem; height:1rem; margin:0; flex:0 0 auto; accent-color:var(--dream-accent); }
@media(max-width:575.98px){.footer__before .block_newsletter .imuud-newsletter-form-row{align-items:stretch;flex-direction:column}.footer__before .block_newsletter .imuud-newsletter-form-row .input-wrapper{flex-basis:auto}.footer__before .block_newsletter .imuud-newsletter-form-row .btn{width:100%}.footer__before .block_newsletter .imuud-newsletter-consent{width:100%;margin-left:0}}
.footer__main { padding-top: 0; background: #2d282b; }
.imuud-home-prefooter{position:relative;isolation:isolate;overflow:hidden;background-color:#a9164d;background-position:center;background-size:cover;background-attachment:scroll}
.imuud-home-prefooter::before{position:absolute;z-index:-1;inset:0;content:"";background:linear-gradient(120deg,rgb(70 8 37 / calc(var(--imuud-banner-glass,72) / 100)),rgb(199 32 91 / calc(var(--imuud-banner-glass,72) / 100)))}
.imuud-home-prefooter.is-parallax{background-attachment:fixed}
.imuud-home-prefooter__content{position:relative;z-index:2}
.imuud-home-prefooter__image{position:absolute;z-index:1;right:max(1.25rem,calc((100vw - var(--imuud-container-width,1320px))/2));bottom:0;width:min(36vw,30rem);max-height:92%;object-fit:contain;object-position:right bottom;pointer-events:none}
@media(max-width:767.98px){.imuud-home-prefooter.is-parallax{background-attachment:scroll}.imuud-home-prefooter__image{right:.5rem;width:min(48vw,16rem);opacity:.62}.imuud-home-prefooter__content{max-width:72%}}
@media(max-width:480px){.imuud-home-prefooter__image{display:none}.imuud-home-prefooter__content{max-width:100%}}
.footer__main-top { padding-block: clamp(3rem, 7vw, 5.5rem); gap: 1.75rem 0; }
.footer__main .footer-block { padding-inline: clamp(.75rem, 2vw, 1.5rem); }
.footer__main h2,
.footer__main h3,
.footer__main .h3,
.footer__main .h4 { margin-bottom: 1.15rem; font-family: var(--bs-body-font-family); font-size: .88rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.footer__main ul { padding: 0; list-style: none; }
.footer__main li + li { margin-top: .55rem; }
.footer__main a { color: rgb(255 255 255 / 72%); line-height: 1.5; }
.footer__main a:hover { color: #fff; }
.footer__main-bottom { padding-block: 1.5rem; border-top: 1px solid rgb(255 255 255 / 10%); }
.copyright { padding-block: 1.35rem; color: rgb(255 255 255 / 55%); border-top: 1px solid rgb(255 255 255 / 10%); font-size: .78rem; text-align: left; }
.copyright a { color: inherit; }

@media (max-width: 767.98px) {
  #index .page-content--home > section:not(.imuudsex-hero) { width: min(calc(100% - 1.5rem), 82.5rem); }
  #index .page-content--home > .ps-featuredproducts,
  #index .page-content--home > .ps-newproducts,
  #index .page-content--home > .ps-bestsellers { margin-block: 3.75rem; }
  .footer__before { padding-inline: 1rem; }
  .footer__before .block_newsletter { display: block; }
  .footer__before .block_newsletter form { margin-top: 1.25rem; }
  .footer__main-top { padding-block: 2.75rem; }
}

/* Final quick-view placement: icon only, never the legacy bottom label. */
#index .product-miniature__top .product-miniature__quickview-button,
.product-miniature__top .product-miniature__quickview-button,
#index .product-miniature__top .product-miniature__quickview-touch,
.product-miniature__top .product-miniature__quickview-touch {
  position: absolute !important;
  top: .7rem !important;
  right: .7rem !important;
  bottom: auto !important;
  left: auto !important;
  width: 2rem !important;
  min-width: 2rem !important;
  height: 2rem !important;
  min-height: 2rem !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
#index .product-miniature__top .product-miniature__quickview-button .material-icons,
.product-miniature__top .product-miniature__quickview-button .material-icons,
#index .product-miniature__top .product-miniature__quickview-touch .material-icons,
.product-miniature__top .product-miniature__quickview-touch .material-icons { margin: 0 !important; }

/* IMUUDSEX 3.2.8 — header identity and one stable quick-view trigger. */
#index .header-bottom .navbar-brand .logo,
#index .header-bottom__logo img { filter: brightness(0) invert(1); }
body:not(#index) .header-bottom {
  color: var(--dream-ink) !important;
  background: #fff !important;
  border-bottom-color: var(--dream-line);
}
body:not(#index) .header-bottom .ps-mainmenu__tree-link,
body:not(#index) .header-bottom .menu-toggle,
body:not(#index) .header-bottom .material-icons { color: var(--dream-ink) !important; }
body:not(#index) .header-bottom .ps-searchbar__form {
  background: linear-gradient(100deg, var(--dream-accent-dark), var(--dream-accent));
  border-color: transparent;
}
body:not(#index) .header-bottom .ps-searchbar__input,
body:not(#index) .header-bottom .ps-searchbar__input::placeholder { color: #fff; }
.header-bottom .ps-mainmenu--desktop { margin-inline-start: 60px !important; }
.header-bottom .ps-mainmenu__tree { display: flex; justify-content: flex-end; }
.product-miniature__infos { position: relative; }
#index .product-miniature__infos .product-miniature__quickview-button,
.product-miniature__infos .product-miniature__quickview-button {
  position: static !important;
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 .42rem !important;
  padding: 0 !important;
  align-items: center;
  gap: .28rem;
  color: var(--dream-accent-dark) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: .68rem;
  font-weight: 650;
  line-height: 1.2;
}
.product-miniature__infos .product-miniature__quickview-button .material-icons {
  margin: 0 !important;
  font-size: .95rem !important;
}
.product-miniature__infos .product-miniature__quickview-button span { display: inline !important; }

/* Contact: focused native form with server-validated numeric CAPTCHA. */
.page-contact #left-column,
.page-contact #right-column { display: none !important; }
.page-contact #center-column {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}
.imuud-contact-layout {
  display: grid;
  max-width: 70rem;
  margin: clamp(1.5rem, 4vw, 3.5rem) auto;
  align-items: start;
  grid-template-columns: minmax(16rem, .75fr) minmax(0, 1.25fr);
  gap: clamp(1.5rem, 4vw, 4rem);
}
.imuud-contact-layout__details {
  padding: clamp(1.5rem, 3vw, 2.5rem);
  color: #fff;
  background: linear-gradient(145deg, var(--dream-accent-dark), var(--dream-accent));
  border-radius: var(--dream-radius-lg);
  box-shadow: 0 1rem 3rem rgb(111 18 61 / 14%);
}
.imuud-contact-layout__details h1 { margin: .65rem 0 1rem; color: #fff; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1; }
.imuud-contact-layout__details p { color: rgb(255 255 255 / 78%); line-height: 1.7; }
.imuud-contact-layout__eyebrow { font-size: .7rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.imuud-contact-layout__details .ps-contactinfo,
.imuud-contact-layout__details a,
.imuud-contact-layout__details .material-icons { color: #fff !important; }
.imuud-contact-layout__details .ps-contactinfo { margin-top: 2rem; }
.page-contact .contact-form {
  width: 100%;
  margin: 0;
  padding: clamp(1.25rem, 3vw, 2.5rem);
  background: #fff;
  border: 1px solid var(--dream-line);
  border-radius: var(--dream-radius-lg);
  box-shadow: 0 1rem 3rem rgb(57 24 42 / 7%);
}
.page-contact .contact-form .page-title-section { margin-bottom: 1.5rem; text-align: center; }
.page-contact .contact-form .form-label { margin-bottom: .38rem; font-size: .78rem; font-weight: 650; }
.page-contact .contact-form .form-control,
.page-contact .contact-form .form-select {
  min-height: 2.7rem;
  background: #fffafc;
  border-color: #eadfe5;
  font-size: .85rem;
  box-shadow: none;
}
.page-contact .contact-form textarea.form-control { min-height: 9rem; resize: vertical; }
.ps-searchbar__input:focus::placeholder { color: transparent !important; opacity: 0 !important; }
.page-contact .contact-form .form-control:focus,
.page-contact .contact-form .form-select:focus { border: 1px solid var(--dream-accent) !important; box-shadow: 0 0 0 2px rgb(212 44 108 / 9%) !important; }
.page-contact .buttons-wrapper { margin-top: 1.25rem; }
.page-contact .buttons-wrapper .btn { min-width: 11rem; }
.imuud-contact-captcha__row { display: flex; align-items: center; gap: .75rem; }
.imuud-contact-captcha__code {
  padding: .65rem 1rem;
  color: var(--dream-accent-dark);
  background: var(--dream-blush);
  border: 1px dashed var(--dream-accent);
  border-radius: .55rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 1.05rem;
  font-weight: 800;
  letter-spacing: .22em;
}
.imuud-contact-captcha__row .form-control { width: 8rem; text-align: center; letter-spacing: .15em; }
@media (max-width: 575.98px) {
  .page-contact .contact-form { padding: 1.1rem; }
  .imuud-contact-captcha__row { align-items: stretch; flex-direction: column; }
  .imuud-contact-captcha__row .form-control { width: 100%; }
}
@media (max-width: 767.98px) {
  .imuud-contact-layout { grid-template-columns: 1fr; }
  .header-bottom .ps-mainmenu--desktop { margin-inline-start: auto !important; }
}

/* Authoritative header palette: pink utility bar, white navigation bar. */
.header-top,
#index .header-top {
  color: #fff !important;
  background: linear-gradient(100deg, var(--dream-accent-dark), var(--dream-accent)) !important;
}
.header-top a,
.header-top button,
.header-top .material-icons,
.header-top .ps-shoppingcart__icon,
.header-top .ps-customer-account__icon { color: #fff !important; }
.header-bottom,
body:not(#index) .header-bottom { background: #fff !important; }
.header-bottom .ps-searchbar__magnifier,
.header-bottom .ps-searchbar__form .material-icons {
  color: #fff !important;
  fill: currentColor !important;
}
.header-bottom .material-icons.ps-searchbar__magnifier.js-search-icon,
.ps-searchbar__form .material-icons.ps-searchbar__magnifier.js-search-icon {
  color: #fff !important;
  fill: #fff !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #fff !important;
}

/* Stable product controls and right-aligned desktop navigation. */
.product-miniature__infos .product-miniature__quickview-button,
.product-miniature__infos .product-miniature__quickview-button:hover,
.product-miniature__infos .product-miniature__quickview-button:focus {
  transform: none !important;
  translate: none !important;
}
@media (min-width: 1200px) {
  .header-bottom .header-bottom__row .ps-mainmenu--desktop {
    width: auto !important;
    margin-inline-start: auto !important;
    margin-inline-end: 0 !important;
    flex: 0 0 auto !important;
    order: 99 !important;
    text-align: end;
  }
  .header-bottom .header-bottom__row .ps-mainmenu__tree {
    width: auto !important;
    margin-inline-start: auto !important;
    justify-content: flex-end !important;
  }
  .header-bottom .ps-mainmenu__tree-item,
  .header-bottom .ps-mainmenu__tree-item-wrapper,
  .header-bottom .ps-mainmenu__tree-link,
  .header-bottom .ps-mainmenu__tree-link:hover,
  .header-bottom .ps-mainmenu__tree-link:focus,
  .header-bottom .ps-mainmenu__tree-link:active {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }
  .header-bottom .ps-mainmenu__tree-link {
    color: var(--dream-ink) !important;
    transition: color .18s ease !important;
  }
  .header-bottom .ps-mainmenu__tree-link:hover,
  .header-bottom .ps-mainmenu__tree-link:focus-visible {
    color: #756970 !important;
  }
}
