/* Reversible desktop header experiment inspired by Muah Me's editorial shell.
   Lunoria's links, search, cart and mobile header remain unchanged. */
@media (min-width: 1025px) {
  html.desktop-header-active .site-wrapper > header.header-classic,
  html.desktop-header-active .site-wrapper > header.header-classic > .header.header-classic {
    background: #fff !important;
  }

  html.desktop-header-active .site-wrapper > header.header-classic > .header.header-classic {
    background-image: radial-gradient(ellipse closest-side at center, rgba(125, 47, 65, .13) 0%, rgba(125, 47, 65, .075) 55%, rgba(125, 47, 65, 0) 100%) !important;
    background-size: min(calc(100% + 52px), 1520px) 162px !important;
    background-position: center bottom !important;
    background-repeat: no-repeat !important;
  }

  /* The logo/search row is flat white; keep the separate menu backdrop below. */
  html.desktop-header-active .header-classic .mid-bar {
    background: transparent !important;
  }

  html.desktop-header-active .site-wrapper > header.header-classic {
    box-shadow: none !important;
  }

  /* The menu owns its glow; avoid a second wash below the header. */
  html.desktop-header-active .site-wrapper > header.header-classic::after {
    content: none !important;
    display: none !important;
  }

  html.desktop-header-active .header-classic .top-bar {
    background: transparent !important;
  }

  html.desktop-header-active .header-classic .mid-bar {
    position: relative !important;
    width: min(100%, 1480px) !important;
    max-width: 1480px !important;
    min-height: 150px !important;
    height: 150px !important;
    margin: 0 auto !important;
    padding: 0 clamp(25px, 3.6vw, 56px) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 330px) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 18px !important;
    overflow: visible !important;
  }

  html.desktop-header-active .header-classic .desktop-logo-wrapper {
    position: relative !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    align-self: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: none !important;
    width: 320px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  html.desktop-header-active .header-classic .desktop-logo-wrapper::before,
  html.desktop-header-active .header-classic .desktop-logo-wrapper::after {
    content: '' !important;
    position: absolute !important;
    top: calc(50% + 20.5px) !important;
    width: clamp(70px, 11vw, 175px) !important;
    height: 1px !important;
    pointer-events: none !important;
  }

  html.desktop-header-active .header-classic .desktop-logo-wrapper::before {
    right: calc(100% + 12px) !important;
    background: linear-gradient(90deg, transparent, rgba(126, 36, 53, .5)) !important;
  }

  html.desktop-header-active .header-classic .desktop-logo-wrapper::after {
    left: calc(100% + 12px) !important;
    background: linear-gradient(90deg, rgba(126, 36, 53, .5), transparent) !important;
  }

  /* Leave a clear gap before the search underline on narrower desktops. */
  @media (max-width: 1450px) {
    html.desktop-header-active .header-classic .desktop-logo-wrapper::before {
      width: clamp(24px, calc(29vw - 275px), 175px) !important;
    }
  }

  html.desktop-header-active .header-classic .desktop-logo-wrapper #logo,
  html.desktop-header-active .header-classic .desktop-logo-wrapper #logo a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  html.desktop-header-active .header-classic .desktop-logo-wrapper #logo img {
    display: block !important;
    width: min(100%, 305px) !important;
    max-width: 305px !important;
    height: auto !important;
    max-height: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: center !important;
    flex: none !important;
    width: min(100%, 310px) !important;
    max-width: 310px !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper #search,
  html.desktop-header-active .header-classic .desktop-search-wrapper .header-search {
    width: 100% !important;
    max-width: none !important;
    height: 43px !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper .header-search {
    overflow: visible !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(111, 37, 53, .48) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper .header-search:focus-within {
    border-bottom-color: #7e2435 !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper .header-search input,
  html.desktop-header-active .header-classic .desktop-search-wrapper .header-search .tt-input {
    height: 42px !important;
    padding: 0 45px 0 4px !important;
    color: #4d2732 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    background: transparent !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper .header-search input::placeholder {
    color: rgba(77, 39, 50, .62) !important;
    opacity: 1 !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper .header-search .search-button {
    height: 42px !important;
    min-width: 43px !important;
    background: transparent !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper .header-search .search-button::before {
    color: #752637 !important;
    background-color: #752637 !important;
    font-size: 23px !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper .tt-menu {
    border: 1px solid rgba(126, 36, 53, .2) !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 18px 48px rgba(70, 31, 40, .16) !important;
  }

  html.desktop-header-active .header-classic .desktop-search-wrapper .tt-menu .search-result a,
  html.desktop-header-active .header-classic .desktop-search-wrapper .tt-menu .product-name {
    color: #4d2732 !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    justify-content: flex-end !important;
    flex: none !important;
    width: auto !important;
    min-width: 0 !important;
    height: 64px !important;
    gap: 9px !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .j-menu {
    gap: 9px !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .j-menu > li,
  html.desktop-header-active .header-classic .classic-cart-wrapper .desktop-cart-wrapper {
    width: 65px !important;
    min-width: 65px !important;
    height: 62px !important;
    border: 0 !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .j-menu > li > a,
  html.desktop-header-active .header-classic .classic-cart-wrapper .cart-heading {
    width: 65px !important;
    min-width: 65px !important;
    height: 62px !important;
    color: #622736 !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    border-radius: 10px !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .j-menu > li > a:hover,
  html.desktop-header-active .header-classic .classic-cart-wrapper .cart-heading:hover {
    background: rgba(126, 36, 53, .07) !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .j-menu > li > a::before,
  html.desktop-header-active .header-classic .classic-cart-wrapper .cart-heading > i::before,
  html.desktop-header-active .header-classic .classic-cart-wrapper .cart-heading::after {
    color: #622736 !important;
  }

  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart > a.cart-heading::after {
    display: block !important;
    color: #622736 !important;
    font-size: 10px !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .j-menu > li > a::before,
  html.desktop-header-active .header-classic .classic-cart-wrapper .cart-heading > i::before,
  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart > a > i::before {
    background-color: #622736 !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .wishlist-badge,
  html.desktop-header-active .header-classic .classic-cart-wrapper #cart-items {
    color: #fff !important;
    background: #8b344a !important;
    border: 2px solid #fff !important;
  }

  html.desktop-header-active .header-classic .desktop-main-menu-wrapper {
    position: relative !important;
    top: 0 !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: center !important;
    width: min(calc(100% - 48px), 1420px) !important;
    max-width: 1420px !important;
    min-height: 62px !important;
    height: 62px !important;
    margin: 0 auto 50px !important;
    padding: 0 12px !important;
    overflow: visible !important;
    border: 1px solid rgba(93, 25, 42, .2) !important;
    border-radius: 9px !important;
    background: linear-gradient(95deg, #712438 0%, #812b40 50%, #712438 100%) !important;
    box-shadow: 0 14px 30px rgba(92, 28, 44, .17) !important;
  }

  /* Use the spare width between items, not as oversized HOME/BLOG gutters. */
  html.desktop-header-active .header-classic .desktop-main-menu-wrapper > #main-menu {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  html.desktop-header-active .header-classic .desktop-main-menu-wrapper > #main-menu > .j-menu {
    width: 100% !important;
    justify-content: space-between !important;
  }

  html.desktop-header-active .header-classic .desktop-main-menu-wrapper::before {
    content: none !important;
    display: none !important;
  }

  html.desktop-header-active .header-classic .desktop-main-menu-wrapper .main-menu > .j-menu,
  html.desktop-header-active .header-classic .desktop-main-menu-wrapper .main-menu > .j-menu > li,
  html.desktop-header-active .header-classic .desktop-main-menu-wrapper .main-menu > .j-menu > li > a {
    min-height: 60px !important;
    height: 60px !important;
  }

  html.desktop-header-active .header-classic .desktop-main-menu-wrapper .main-menu > .j-menu > li > a,
  html.desktop-header-active .header-classic .desktop-main-menu-wrapper > #main-menu-2 > .j-menu > li > a {
    color: #fff9fb !important;
    background: transparent !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
  }

  html.desktop-header-active .header-classic .desktop-main-menu-wrapper .main-menu > .j-menu > li > a:hover,
  html.desktop-header-active .header-classic .desktop-main-menu-wrapper .main-menu > .j-menu > li.active > a,
  html.desktop-header-active .header-classic .desktop-main-menu-wrapper > #main-menu-2 > .j-menu > li > a:hover {
    background: rgba(255, 255, 255, .08) !important;
  }

  html.desktop-header-active .header-classic .desktop-main-menu-wrapper > #main-menu-2 {
    border-left-color: rgba(255, 255, 255, .17) !important;
  }
}

/* Header counters: readable, matching circular badges for Wishlist and Cart. */
@media (min-width: 1025px) {
  html.desktop-header-active .header-classic .classic-cart-wrapper .wishlist-badge,
  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart-items {
    box-sizing: border-box !important;
    min-width: 21px !important;
    width: auto !important;
    height: 21px !important;
    padding: 0 3px !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    background: #812b40 !important;
    color: #fff !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 17px !important;
    text-align: center !important;
    box-shadow: 0 2px 6px rgba(91, 30, 46, .22) !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .wishlist-badge:not(.count-zero),
  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart-items:not(.count-zero) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .wishlist-badge {
    top: 1px !important;
    right: 2px !important;
  }

  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart-items {
    top: 2px !important;
    right: 2px !important;
  }
}

@media (min-width: 1025px) and (max-width: 1250px) {
  html.desktop-header-active .header-classic .mid-bar {
    grid-template-columns: minmax(0, 1fr) 260px minmax(0, 1fr) !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  html.desktop-header-active .header-classic .desktop-logo-wrapper {
    width: 260px !important;
  }

  html.desktop-header-active .header-classic .desktop-logo-wrapper #logo img {
    width: 245px !important;
  }

  html.desktop-header-active .header-classic .classic-cart-wrapper .j-menu > li,
  html.desktop-header-active .header-classic .classic-cart-wrapper .desktop-cart-wrapper,
  html.desktop-header-active .header-classic .classic-cart-wrapper .j-menu > li > a,
  html.desktop-header-active .header-classic .classic-cart-wrapper .cart-heading {
    width: 55px !important;
    min-width: 55px !important;
  }

  html.desktop-header-active .header-classic .desktop-main-menu-wrapper {
    width: calc(100% - 24px) !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }

  html.desktop-header-active .header-classic .desktop-main-menu-wrapper .main-menu > .j-menu > li > a,
  html.desktop-header-active .header-classic .desktop-main-menu-wrapper > #main-menu-2 > .j-menu > li > a {
    padding-left: 6px !important;
    padding-right: 6px !important;
    font-size: 9.5px !important;
  }
}

/* Clear cookie choice in a compact, brand-matched card. Consent logic unchanged. */
html body #luno-cookie {
  left: 24px !important; right: auto !important; bottom: max(24px, env(safe-area-inset-bottom)) !important;
  transform: none !important; width: calc(100% - 48px) !important; max-width: 420px !important;
  padding: 20px !important; box-sizing: border-box; background: #fffdfd !important;
  color: #51444b !important; border: 1px solid #e9dce2 !important; border-radius: 16px !important;
  box-shadow: 0 8px 32px rgba(54,29,39,.16) !important;
  font: 400 13px/1.6 Montserrat,sans-serif !important;
}
html body #luno-cookie h2 { margin: 0 0 7px !important; color: #712438 !important; font: 600 16px/1.4 Montserrat,sans-serif !important; }
html body #luno-cookie p { margin: 0 !important; font: inherit !important; }
html body #luno-cookie a { color: #712438 !important; font: inherit !important; text-underline-offset: 3px; }
html body #luno-cookie .actions { display: grid !important; grid-template-columns: 1fr 1fr; gap: 10px !important; margin-top: 14px !important; }
html body #luno-cookie button { width: 100%; min-height: 42px; padding: 10px 12px !important; border: 1px solid #712438 !important; border-radius: 9px !important; font: 600 12px/20px Montserrat,sans-serif !important; white-space: nowrap; }
html body #luno-cookie .accept { background: #712438 !important; color: #fff !important; }
html body #luno-cookie .reject { background: #fff !important; color: #712438 !important; }
html body #luno-cookie button:focus-visible, html body #luno-cookie a:focus-visible { outline: 2px solid #a76a7e; outline-offset: 3px; }
html body #luno-cookie .accept:hover { background: #592033 !important; }
html body #luno-cookie .reject:hover { background: #faf2f5 !important; }
@media (min-width: 768px) {
  html body #luno-cookie { left: 50% !important; right: auto !important; transform: translateX(-50%) !important; }
}
@media (max-width: 767px) {
  html body #luno-cookie { left: 12px !important; right: 12px !important; width: auto !important; max-width: none !important; bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important; padding: 16px !important; font-size: 12px !important; line-height: 1.55 !important; }
  html.has-bottom-menu body #luno-cookie { bottom: calc(76px + env(safe-area-inset-bottom, 0px)) !important; }
  html body #luno-cookie h2 { font-size: 15px !important; }
}

/* Fixed-size dot viewport; animate the track instead of changing layout. */
html.route-common-home body .module.carousel-mode .swiper-pagination.luno-smooth-dots {
  display: block !important; width: var(--luno-dots-width, 80px) !important; max-width: 80px !important; height: 20px !important;
  box-sizing: border-box; padding: 6px 4px !important; overflow: hidden !important;
  margin-left: auto !important; margin-right: auto !important;
}
html.route-common-home body .luno-dots-track {
  display: flex; align-items: center; gap: 8px; width: max-content;
  transition: transform 300ms cubic-bezier(.22,.61,.36,1);
}
html.route-common-home body .luno-smooth-dots .swiper-pagination-bullet {
  display: block !important; width: 8px !important; height: 8px !important;
  flex: 0 0 8px !important; margin: 0 !important; opacity: 0 !important;
  pointer-events: none; background: #d8cbd0 !important; transform: scale(.85) !important;
  transition: opacity 220ms ease, background-color 220ms ease, transform 220ms ease !important;
}
html.route-common-home body .luno-smooth-dots .swiper-pagination-bullet.luno-dot-visible { opacity: 1 !important; pointer-events: auto; }
html.route-common-home body .luno-smooth-dots .swiper-pagination-bullet-active { background: #712438 !important; transform: scale(1.1) !important; }
html.route-common-home body .swiper-wrapper { transition-timing-function: cubic-bezier(.22,.61,.36,1) !important; }
@media (prefers-reduced-motion: reduce) {
  html.route-common-home body .luno-dots-track,
  html.route-common-home body .luno-smooth-dots .swiper-pagination-bullet { transition-duration: 1ms !important; }
}

html body .module-products-27 .luno-all-special-offers { text-align: center; margin-top: 18px; }
html body .module-products-27 .luno-all-special-offers > a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; color: #712438; font: 600 12px/20px Montserrat,sans-serif; text-decoration: none; }
html body .module-products-27 .luno-all-special-offers > a:hover { text-decoration: underline; }

/* The fixed mobile bar is already reserved by body padding, including safe area.
   Journal also pads site-wrapper by 64px; remove that duplicate blank strip. */
html.mobile-header-active.has-bottom-menu body .site-wrapper {
  padding-bottom: 0 !important;
}

/* Quiet, compact breadcrumbs with a clear current-page marker. */
html body ul.breadcrumb {
  display: flex !important; align-items: center !important; flex-wrap: wrap;
  gap: 4px 10px; padding-top: 10px !important; padding-bottom: 10px !important;
}
html body ul.breadcrumb > li {
  display: inline-flex !important; align-items: center; gap: 10px;
  padding: 0 !important; margin: 0 !important; line-height: 20px !important;
}
html body ul.breadcrumb > li > a {
  color: #83747b !important; font: 500 12px/20px Montserrat,sans-serif !important;
  text-decoration: none !important; transition: color .15s ease;
}
html body ul.breadcrumb > li > a:hover { color: #712438 !important; }
html body ul.breadcrumb > li:last-child > a {
  color: #712438 !important; font-weight: 600 !important;
  padding: 4px 9px; background: #f8f1f4; border-radius: 6px;
}
html body ul.breadcrumb > li:first-child > a { color: #956575 !important; }
html body ul.breadcrumb > li + li::before {
  content: '' !important; display: inline-block !important;
  width: 5px !important; height: 5px !important; flex: 0 0 5px;
  padding: 0 !important; margin: 0 2px 0 0 !important;
  border: 0 !important; border-top: 1px solid #b8a9b0 !important;
  border-right: 1px solid #b8a9b0 !important; transform: rotate(45deg);
}
html body ul.breadcrumb a:focus-visible { outline: 2px solid #a76a7e; outline-offset: 3px; border-radius: 3px; }
@media (max-width: 767px) {
  html body ul.breadcrumb { gap: 3px 7px; }
  html body ul.breadcrumb > li { gap: 7px; }
  html body ul.breadcrumb > li > a { font-size: 11px !important; }
  html body ul.breadcrumb > li:last-child > a { padding: 3px 7px; }
}

/* Contextual navigation retains sibling cards on leaf categories. */
html body #content .refine-categories .luno-category-back-icon { display: flex; align-items: center; justify-content: center; width: 100%; height: 100px; color: #712438; font: 400 42px/1 Arial,sans-serif; }
html body #content .refine-categories .luno-category-active > a { border-color: #712438 !important; background: #faf3f6 !important; }
@media (max-width: 767px) {
  html body #content .refine-categories .luno-category-back-icon { height: 60px; font-size: 32px; }
}

/* Mobile account page: registration before returning-customer sign-in. */
@media (max-width: 767px) {
  html body #account-login #content .login-box { display: flex !important; flex-direction: column !important; }
  html body #account-login #content .login-box > .col-sm-6 { order: 0 !important; width: 100% !important; }
  html body #account-login #content .login-box > .col-sm-6:has(.login-form) { order: 1 !important; }
}

/* Match the CART action to the adjacent account actions. */
@media (min-width: 1025px) {
  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart {
    width: 100% !important;
    margin: 0 !important;
  }

  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart > a.cart-heading {
    min-height: 64px !important;
    height: 64px !important;
  }

  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart > a.cart-heading > i {
    width: 28px !important;
    height: 28px !important;
    margin-bottom: 6px !important;
    line-height: 28px !important;
    transform: none !important;
  }

  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart > a.cart-heading > i::before {
    font-size: 29px !important;
    line-height: 29px !important;
  }

  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart > a.cart-heading::after {
    width: auto !important;
    height: 15px !important;
    padding: 0 !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 15px !important;
    transform: none !important;
  }

  html.desktop-header-active .header-classic .desktop-cart-wrapper #cart-items {
    top: 2px !important;
  }
}

/* Optically center the asymmetric person-plus glyph over REGISTER. */
@media (min-width: 1025px) {
  html.desktop-header-active .header-classic .classic-cart-wrapper .top-menu-item-2 > a::before {
    transform: translateX(2px) !important;
  }
}

/* Lunoria desktop mini-cart: match the new burgundy header, without changing cart logic. */
@media (min-width: 1025px) {
  html.desktop-header-active .header-classic #cart-content {
    width: 420px !important;
    max-width: calc(100vw - 24px) !important;
    overflow: hidden !important;
    border: 1px solid #eadfe1 !important;
    border-radius: 14px !important;
    background: #fffdfc !important;
    box-shadow: 0 20px 48px rgba(71, 28, 40, .16) !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-products {
    padding: 14px 16px 10px !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-products .table,
  html.desktop-header-active .header-classic #cart-content .cart-totals .table {
    width: 100% !important;
    margin: 0 !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-products td {
    padding: 7px 5px !important;
    vertical-align: middle !important;
    border-top: 0 !important;
    border-bottom: 1px solid #eee6e7 !important;
    color: #5b5357 !important;
    font-size: 12px !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-products .td-image img {
    width: 60px !important;
    height: 60px !important;
    object-fit: contain !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-products .td-name a {
    color: #4d2732 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-products .td-name a:hover {
    color: #8a3249 !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-products .td-qty,
  html.desktop-header-active .header-classic #cart-content .cart-products .td-total {
    white-space: nowrap !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-products .cart-remove,
  html.desktop-header-active .header-classic #cart-content .cart-products .cart-remove i {
    color: #9b6572 !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-products .cart-remove:hover,
  html.desktop-header-active .header-classic #cart-content .cart-products .cart-remove:hover i {
    color: #712438 !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-totals .table td {
    padding: 5px 21px !important;
    border: 0 !important;
    color: #62585e !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-totals .table tr:first-child td {
    padding-top: 12px !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-totals .table td:last-child {
    color: #4d2732 !important;
    font-weight: 600 !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-totals .table td strong {
    color: #4d2732 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
  }

  html.desktop-header-active .header-classic #cart-content .mini-cart-free-shipping td {
    padding: 12px 21px !important;
    background: #faf5f4 !important;
    color: #7c3449 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-align: left !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-buttons {
    display: flex !important;
    gap: 10px !important;
    padding: 14px 16px 16px !important;
    border-top: 1px solid #eadfe1 !important;
    background: #fffdfc !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-buttons .btn {
    display: flex !important;
    flex: 1 1 0 !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    min-height: 42px !important;
    padding: 10px 12px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .05em !important;
    line-height: 1.25 !important;
    text-align: center !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-buttons .btn-cart {
    border: 1px solid #9b6473 !important;
    background: transparent !important;
    color: #6f293d !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-buttons .btn-cart:hover {
    background: #f7eff1 !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-buttons .btn-checkout {
    border: 1px solid #712438 !important;
    background: #712438 !important;
    color: #fff !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-buttons .btn-checkout:hover {
    border-color: #572033 !important;
    background: #572033 !important;
  }

  html.desktop-header-active .header-classic #cart-content .cart-empty {
    margin: 0 !important;
    padding: 24px !important;
    color: #62585e !important;
    font-size: 13px !important;
  }
}

/* Mobile basket drawer: readable product cards and a consistent Lunoria footer. */
@media (max-width: 767px) {
  html.mobile-header-active .mobile-cart-content-container {
    width: min(100vw, 420px) !important;
    max-width: 100vw !important;
    background: #fbf8f7 !important;
    box-shadow: -12px 0 36px rgba(55, 26, 33, .18) !important;
  }

  html.mobile-header-active .mobile-cart-content-container .mobile-wrapper-header {
    height: 58px !important;
    padding: 0 18px !important;
    border-bottom: 1px solid #eadfe1 !important;
    background: #fffdfc !important;
    color: #542737 !important;
  }

  html.mobile-header-active .mobile-cart-content-container .mobile-wrapper-header span {
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: .035em !important;
  }

  html.mobile-header-active .mobile-cart-content-container .mobile-wrapper-header .x {
    color: #713748 !important;
  }

  html.mobile-header-active .mobile-cart-content-container .mobile-cart-content-wrapper,
  html.mobile-header-active .mobile-cart-content-container #cart-content {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  html.mobile-header-active .mobile-cart-content-container .mobile-cart-content-wrapper {
    height: calc(100dvh - 58px) !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html.mobile-header-active .mobile-cart-content-container #cart-content {
    height: auto !important;
  }

  html.mobile-header-active .mobile-cart-content-container .mobile-cart-content-wrapper .cart-products {
    width: 100% !important;
    height: 100% !important;
    padding: 14px 14px 210px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #fbf8f7 !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .table {
    width: 100% !important;
    margin: 0 !important;
    border-collapse: separate !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products tr {
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) 56px !important;
    grid-template-areas: 'image name remove' 'image qty price' !important;
    column-gap: 10px !important;
    row-gap: 6px !important;
    align-items: start !important;
    margin-bottom: 10px !important;
    padding: 12px !important;
    border: 1px solid #ede3e5 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 3px 12px rgba(70, 28, 40, .035) !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products td {
    display: block !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    text-align: left !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .td-image { grid-area: image !important; }
  html.mobile-header-active .mobile-cart-content-container .cart-products .td-name { grid-area: name !important; }
  html.mobile-header-active .mobile-cart-content-container .cart-products .td-qty { grid-area: qty !important; }
  html.mobile-header-active .mobile-cart-content-container .cart-products .td-total { grid-area: price !important; }
  html.mobile-header-active .mobile-cart-content-container .cart-products .td-remove { grid-area: remove !important; text-align: right !important; }

  html.mobile-header-active .mobile-cart-content-container .cart-products .td-image img {
    display: block !important;
    width: 64px !important;
    height: 64px !important;
    object-fit: contain !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .td-name a {
    color: #4d2732 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
    overflow-wrap: anywhere !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .td-qty {
    color: #756c70 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .td-total {
    color: #542737 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .cart-remove {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    margin: -4px 0 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .cart-remove i {
    display: none !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .cart-remove::before,
  html.mobile-header-active .mobile-cart-content-container .cart-products .cart-remove::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 14px !important;
    height: 1.5px !important;
    border-radius: 2px !important;
    background: #8f6872 !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .cart-remove::before {
    transform: translate(-50%, -50%) rotate(45deg) !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .cart-remove::after {
    transform: translate(-50%, -50%) rotate(-45deg) !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-products .cart-remove:active {
    background: #f8f1f2 !important;
  }

  html.mobile-header-active .mobile-cart-content-container .mobile-cart-content-wrapper .cart-totals {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    padding: 12px 16px max(12px, env(safe-area-inset-bottom)) !important;
    border-top: 1px solid #eadfe1 !important;
    background: #fffdfc !important;
    box-shadow: 0 -10px 28px rgba(70, 28, 40, .08) !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-totals .table {
    width: 100% !important;
    margin: 0 !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-totals .table td {
    padding: 3px 0 !important;
    border: 0 !important;
    color: #6c6267 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-totals .table td:last-child,
  html.mobile-header-active .mobile-cart-content-container .cart-totals .table td strong {
    color: #4d2732 !important;
    font-weight: 700 !important;
  }

  html.mobile-header-active .mobile-cart-content-container .mini-cart-free-shipping td {
    padding-top: 10px !important;
    color: #713748 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-align: left !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-buttons {
    display: flex !important;
    gap: 10px !important;
    padding: 12px 0 0 !important;
    background: transparent !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-buttons .btn {
    display: flex !important;
    flex: 1 1 0 !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding: 9px 8px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .025em !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-buttons .btn-cart {
    border: 1px solid #9c6875 !important;
    background: #fff !important;
    color: #6f293d !important;
  }

  html.mobile-header-active .mobile-cart-content-container .cart-buttons .btn-checkout {
    border: 1px solid #712438 !important;
    background: #712438 !important;
    color: #fff !important;
  }
}

/* Animate both directions while keeping the original header space reserved. */
@media (min-width: 1025px) {
  html.desktop-header-active.luno-desktop-header-stuck .header-classic .mid-bar {
    transform: translateY(-100%) !important;
    opacity: 0;
    pointer-events: none;
    transition: transform 280ms cubic-bezier(.22, .61, .36, 1), opacity 280ms ease !important;
    will-change: transform, opacity;
  }

  html.desktop-header-active.luno-desktop-header-stuck.luno-desktop-header-preparing .header-classic .mid-bar {
    transition: none !important;
  }

  html.desktop-header-active.luno-desktop-header-stuck.luno-desktop-header-visible .header-classic .mid-bar {
    transform: translateY(0) !important;
    opacity: 1;
    pointer-events: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.desktop-header-active.luno-desktop-header-stuck .header-classic .mid-bar {
    transition: none !important;
  }
}

/* Homepage artwork: retouched photos without baked-in cast shadows. */
html body .module-banners-299 .module-item-1 > a > img {
  content: url('/image/catalog/banners+/lunoria-shadowless-clitoral-v1.jpg') !important;
}

html body .module-banners-299 .module-item-2 > a > img {
  content: url('/image/catalog/banners+/lunoria-shadowless-couples-v1.jpg') !important;
}

html body .module-banners-299 .module-item-3 > a > img {
  content: url('/image/catalog/banners+/lunoria-shadowless-lube-v1.jpg') !important;
}

html body .module-banners-299 .module-item-5 > a > img {
  content: url('/image/catalog/banners+/lunoria-bdsm-clean-chain-v2.jpg') !important;
}

html body .module-banners-299 .module-item-6 > a > img {
  content: url('/image/catalog/banners+/lunoria-shadowless-lingerie-v1.jpg') !important;
}

html body .module-banners-299 .module-item-7 > a > img {
  content: url('/image/catalog/banners+/lunoria-mens-centered-v2.jpg') !important;
}

html body .module-banners-299 .module-item-8 > a > img {
  content: url('/image/catalog/banners+/lunoria-shadowless-sale-v1.jpg') !important;
}

html body .module-banners-259 .module-item-1 > a::before {
  background-image: url('/image/catalog/banners+/lunoria-shadowless-sona-v1.jpg') !important;
}

/* Temporarily hide the affiliate entry in the footer menu. */
footer li:has(> a[href*="route=affiliate/login"]) {
  display: none !important;
}

/* One brand treatment for filled calls to action across the storefront. */
@layer lunoria-brand-cta {
  html body :is(
    .btn-primary,
    .btn-checkout,
    #button-cart,
    .notification-checkout,
    .lunoria-logout-primary,
    .lunoria-order-view,
    .lunoria-notice-button,
    .popup-options .btn-cart
  ) {
    border-color: #712438 !important;
    background-color: #712438 !important;
    background-image: linear-gradient(95deg, #712438 0%, #812b40 50%, #712438 100%) !important;
    color: #fff !important;
  }
}

/* A balanced two-column mobile catalog with consistent card rhythm. */
@media (max-width: 767px) {
  html.mobile-header-active body #content .main-products.product-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px 16px !important;
    width: 100% !important; margin: 0 !important; padding: 0 !important;
    align-items: stretch !important;
  }
  html.mobile-header-active body #content .main-products.product-grid > .product-layout {
    float: none !important; width: auto !important; min-width: 0 !important;
    margin: 0 !important; padding: 0 !important;
  }
  html.mobile-header-active body #content .main-products.product-grid > :is(.ias-trigger,.ias-spinner,.ias-noneleft) {
    grid-column: 1 / -1 !important; width: 100% !important; margin: 0 !important;
    padding: 0 !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .product-thumb {
    display: flex !important; flex-direction: column !important;
    height: 100% !important; min-width: 0 !important;
    padding: 0 !important; margin: 0 !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .image {
    position: relative !important; width: 100% !important; aspect-ratio: 1 !important;
    height: auto !important; flex: 0 0 auto !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .product-img { width: 100% !important; height: 100% !important; }
  html.mobile-header-active body #content .main-products.product-grid .product-img img { object-fit: contain !important; }
  html.mobile-header-active body #content .main-products.product-grid .caption {
    display: flex !important; flex-direction: column !important; align-items: stretch !important;
    flex: 1 1 auto !important; padding: 0 !important; margin: 0 !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .name {
    display: block !important; width: 100% !important;
    min-height: 54px !important; height: 54px !important;
    padding: 0 !important; margin: 10px 0 6px !important;
    text-align: center !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .name > a {
    width: 100% !important;
    display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 3 !important;
    overflow: hidden !important; font-size: 13px !important; line-height: 18px !important;
    font-weight: 500 !important; color: #392e33 !important;
    text-align: center !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .caption > .price {
    align-self: stretch !important; width: 100% !important; height: auto !important; min-height: 23px !important;
    padding: 0 !important; margin: 0 0 8px !important;
    text-align: center !important; justify-content: center !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .price-new,
  html.mobile-header-active body #content .main-products.product-grid .price-normal { font-size: 14px !important; line-height: 22px !important; font-weight: 700 !important; }
  html.mobile-header-active body #content .main-products.product-grid .price-old { font-size: 11px !important; color: #887c81 !important; }
  html.mobile-header-active body #content .main-products.product-grid .buttons-wrapper {
    margin: auto 0 0 !important; padding: 0 !important; height: 44px !important; min-height: 44px !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .button-group {
    display: flex !important; align-items: center !important; justify-content: space-between !important;
    height: 44px !important; padding: 0 !important; gap: 8px !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .button-group :is(.cart-group,.wish-group) { margin: 0 !important; padding: 0 !important; flex: 0 0 44px !important; width: 44px !important; }
  html.mobile-header-active body #content .main-products.product-grid .button-group :is(.btn-cart,.btn-wishlist) { width: 44px !important; height: 44px !important; min-height: 44px !important; margin: 0 !important; padding: 0 !important; }
  html.mobile-header-active body #content .main-products.product-grid .product-labels {
    position: absolute !important; top: 6px !important; left: 6px !important; right: auto !important; bottom: auto !important;
    display: flex !important; flex-direction: column !important; align-items: flex-start !important;
    gap: 4px !important; width: auto !important; margin: 0 !important; padding: 0 !important; transform: none !important;
  }
  html.mobile-header-active body #content .main-products.product-grid .product-label {
    position: static !important; width: auto !important; height: auto !important;
    padding: 3px 6px !important; margin: 0 !important; border-radius: 4px !important;
    font-size: 10px !important; line-height: 14px !important; letter-spacing: 0 !important;
  }
}

/* Quiet, compact desktop catalog sidebar. Mobile drawer stays independent. */
html:not(.mobile-header-active) #column-left .module-filter {
  padding: 18px !important; margin: 0 0 24px !important;
  border: 1px solid #eee5e8 !important; border-radius: 14px !important;
  background: #fff !important; box-shadow: none !important;
}
html:not(.mobile-header-active) #column-left .module-filter > .module-title {
  display: flex !important; align-items: center !important; justify-content: space-between !important;
  gap: 8px; margin: 0 !important; padding: 0 0 14px !important;
  border-bottom: 1px solid #eee5e8 !important;
  font-size: 17px !important; font-weight: 700 !important; line-height: 24px !important;
  color: #392e33 !important; text-transform: none !important;
}
html:not(.mobile-header-active) #column-left .module-filter > .module-title::after,
html:not(.mobile-header-active) #column-left .module-filter > .module-title > span::after { display: none !important; }
html:not(.mobile-header-active) #column-left .module-filter .reset-filter {
  position: static !important; inset: auto !important; transform: none !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  align-self: center !important; flex: 0 0 auto; height: 28px !important; min-height: 28px !important;
  margin: 0 !important; padding: 4px 8px !important; border-radius: 6px !important;
  background: #f7f1f3 !important; border: 0 !important;
  color: #712438 !important; box-shadow: none !important;
  font-size: 12px !important; line-height: 20px !important; font-weight: 600 !important; text-transform: none !important;
}
html:not(.mobile-header-active) #column-left .module-filter > .module-title > .x { display: none !important; }
html:not(.mobile-header-active) #column-left .module-filter .reset-filter::before { display: none !important; }
html:not(.mobile-header-active) #column-left .module-filter :is(.module-body,.panel-group) { margin: 0 !important; padding: 0 !important; }
html:not(.mobile-header-active) #column-left .module-filter .panel {
  margin: 0 !important; border: 0 !important; border-bottom: 1px solid #eee5e8 !important;
  box-shadow: none !important; border-radius: 0 !important; background: transparent !important;
}
html:not(.mobile-header-active) #column-left .module-filter .panel-heading { padding: 0 !important; background: transparent !important; border: 0 !important; }
html:not(.mobile-header-active) #column-left .module-filter .panel-heading a {
  display: flex !important; align-items: center !important; justify-content: space-between !important;
  flex-direction: row !important; min-height: 48px !important; padding: 12px 0 !important;
  color: #392e33 !important; font-size: 13px !important; line-height: 20px !important;
  font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important;
}
html:not(.mobile-header-active) #column-left .module-filter .panel-heading a::before,
html:not(.mobile-header-active) #column-left .module-filter .panel-heading a > i { display: none !important; }
html:not(.mobile-header-active) #column-left .module-filter .panel-heading a::after {
  content: '' !important; position: static !important; display: block !important;
  width: 7px !important; height: 7px !important; flex: 0 0 7px;
  border-right: 1.5px solid #8d7d83 !important; border-bottom: 1.5px solid #8d7d83 !important;
  background: none !important; margin: -4px 3px 0 10px !important;
  transform: rotate(45deg) !important; transition: transform .18s ease;
}
html:not(.mobile-header-active) #column-left .module-filter .panel-heading a[aria-expanded="true"]::after { transform: rotate(225deg) !important; margin-top: 4px !important; }
html:not(.mobile-header-active) #column-left .module-filter .panel-body { padding: 0 0 16px !important; border: 0 !important; }
html:not(.mobile-header-active) #column-left .module-filter .extra-controls {
  display: grid !important; grid-template-columns: 10px minmax(0,1fr) 10px minmax(0,1fr) !important;
  align-items: center; gap: 6px !important; margin: 10px 0 0 !important;
}
html:not(.mobile-header-active) #column-left .module-filter .extra-controls input {
  width: 100% !important; min-width: 0 !important; height: 38px !important; margin: 0 !important;
  border: 1px solid #ded4d7 !important; border-radius: 8px !important; padding: 0 6px !important;
  background: #fff !important; color: #392e33 !important; font-size: 13px !important;
  font-weight: 500 !important; box-shadow: none !important;
}
html:not(.mobile-header-active) #column-left .module-filter input:focus-visible { outline: 2px solid #a67d8a; outline-offset: 2px; }
html:not(.mobile-header-active) #column-left .module-filter .currency-symbol { margin: 0 !important; font-size: 12px !important; color: #796a70 !important; }
html:not(.mobile-header-active) #column-left .module-filter :is(.irs-line,.irs-bar) { height: 3px !important; border: 0 !important; }
html:not(.mobile-header-active) #column-left .module-filter .irs-line { background: #ede5e8 !important; }
html:not(.mobile-header-active) #column-left .module-filter .irs-line > * { background: none !important; }
html:not(.mobile-header-active) #column-left .module-filter .irs-bar { background: #712438 !important; }
html:not(.mobile-header-active) #column-left .module-filter .irs-slider { background: #fff !important; border: 3px solid #712438 !important; box-shadow: none !important; }
html:not(.mobile-header-active) #column-left .module-filter :is(.filter-checkbox,.filter-radio) {
  display: block !important; max-height: 260px; overflow-y: auto;
}
html:not(.mobile-header-active) #column-left .module-filter :is(.filter-checkbox,.filter-radio) > label {
  display: flex !important; align-items: center !important; justify-content: flex-start !important; gap: 9px;
  width: 100% !important; min-height: 34px !important; height: auto !important;
  margin: 0 !important; padding: 6px 0 !important; border: 0 !important; background: transparent !important;
  box-shadow: none !important; color: #51434a !important; font-size: 12px !important; line-height: 18px !important;
}
html:not(.mobile-header-active) #column-left .module-filter label[hidden] { display: none !important; }
html:not(.mobile-header-active) #column-left .module-filter .lunoria-brand-image-filter img { display: none !important; }
html:not(.mobile-header-active) #column-left .module-filter label .links-text {
  display: block !important; flex: 1; color: inherit !important; font-size: 12px !important; font-weight: 500 !important;
}
html:not(.mobile-header-active) #column-left .module-filter .count-badge {
  position: static !important; inset: auto !important; transform: none !important;
  background: transparent !important; color: #8e8086 !important; font-size: 10px !important;
  width: auto !important; height: auto !important; padding: 0 !important; margin-left: auto !important;
}
html:not(.mobile-header-active) #column-left .module-filter input:is([type="checkbox"],[type="radio"]) {
  position: relative !important; inset: auto !important; opacity: 1 !important; appearance: auto !important;
  flex: 0 0 15px !important; width: 15px !important; height: 15px !important;
  min-width: 15px !important; min-height: 15px !important; margin: 0 !important; accent-color: #712438;
}
html:not(.mobile-header-active) #column-left .lunoria-brand-filter-search input {
  height: 36px !important; border: 1px solid #ded4d7 !important; border-radius: 8px !important;
  font-size: 12px !important; background: #fff !important; box-shadow: none !important;
}
html:not(.mobile-header-active) #column-left .lunoria-category-navigation-panel { margin: 18px 0 0 !important; padding: 0 !important; border: 0 !important; }
html:not(.mobile-header-active) #column-left .lunoria-category-navigation-title {
  margin: 0 0 8px !important; padding: 0 !important; font-size: 13px !important;
  height: auto !important; min-height: 0 !important; line-height: 20px !important;
  font-weight: 600 !important; color: #392e33 !important; text-transform: none !important;
}
html:not(.mobile-header-active) #column-left .lunoria-category-tree { width: auto !important; min-width: 0; }
html:not(.mobile-header-active) #column-left .lunoria-category-node { border-color: #f1ebed !important; }
html:not(.mobile-header-active) #column-left .lunoria-category-node > a,
html:not(.mobile-header-active) #column-left .lunoria-category-node > details > summary {
  display: flex !important; align-items: center !important; gap: 9px !important;
  min-height: 46px !important; padding: 6px 0 !important; color: #51434a !important;
  font-size: 12px !important; line-height: 18px !important; font-weight: 500 !important;
}
html:not(.mobile-header-active) #column-left .lunoria-category-name {
  flex: 1; min-width: 0; white-space: normal !important;
  font-weight: 600 !important; color: #392e33 !important;
}
html:not(.mobile-header-active) #column-left .module-filter :is(.checkbox label, .radio label, .filter-price-min, .filter-price-max) {
  font-weight: 600 !important; color: #392e33 !important;
}
html:not(.mobile-header-active) #column-left .lunoria-category-photo {
  display: block !important; width: 30px !important; height: 30px !important; flex: 0 0 30px;
  object-fit: contain; background: #fff; border-radius: 6px;
}
html:not(.mobile-header-active) #column-left .lunoria-category-toggle-label { display: none !important; }
html:not(.mobile-header-active) #column-left .lunoria-category-toggle {
  display: flex !important; align-items: center; justify-content: center;
  width: 24px !important; min-width: 24px !important; min-height: 30px !important;
  flex: 0 0 24px; padding: 0 !important; background: transparent !important;
}
html:not(.mobile-header-active) #column-left .lunoria-category-toggle::before {
  content: '' !important; width: 7px !important; height: 7px !important;
  border-right: 1.5px solid #8d7d83; border-bottom: 1.5px solid #8d7d83;
  transform: rotate(45deg); margin-top: -4px;
}
html:not(.mobile-header-active) #column-left details[open] > summary .lunoria-category-toggle::before { transform: rotate(225deg); margin-top: 4px; }
html:not(.mobile-header-active) #column-left .lunoria-category-view-all > a { color: #712438 !important; font-weight: 600 !important; }
html:not(.mobile-header-active) #column-left .module-filter :is(summary,a):hover { color: #712438 !important; }

/* Existing category images at every level of the mobile main menu. */
.luno-mobile-quick-links { display: none; }
html.mobile-header-active .mobile-main-menu-wrapper .luno-mobile-quick-links {
  display: grid !important; grid-template-columns: 1.1fr 1.2fr .65fr;
  gap: 6px; margin: 12px 0 8px; padding: 0 12px;
}
html.mobile-header-active .mobile-main-menu-wrapper .luno-mobile-quick-links > a {
  display: flex; align-items: center; justify-content: center;
  min-width: 0; min-height: 42px; padding: 8px 4px;
  border: 1px solid #eee0e5; border-radius: 9px;
  background: #faf5f7; color: #712438;
  font-family: Montserrat,sans-serif; font-size: 11px; font-weight: 600;
  line-height: 16px; text-align: center; white-space: nowrap;
  text-decoration: none !important;
}
html.mobile-header-active .mobile-main-menu-wrapper .luno-mobile-quick-source,
html.mobile-header-active .mobile-main-menu-wrapper .lunoria-mobile-all-products { display: none !important; }
html:not(.mobile-header-active) .main-menu .lunoria-mobile-view-all,
html.mobile-header-active .mobile-main-menu-wrapper .luno-dropdown-heading { display: none !important; }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu :is(.collapse, .collapsing) .j-menu > li > a:has(.luno-dropdown-photo) {
  display: flex !important; align-items: center !important; gap: 12px !important;
  padding-left: 12px !important; min-height: 58px !important;
}
html.mobile-header-active .mobile-main-menu-wrapper .main-menu .luno-dropdown-photo {
  display: block !important; width: 36px !important; height: 36px !important;
  flex: 0 0 36px !important; margin: 0 !important; padding: 3px !important;
  object-fit: contain !important; background: #fff !important;
  border: 1px solid #eee5e8; border-radius: 8px;
}
html.mobile-header-active .mobile-main-menu-wrapper .main-menu :is(.collapse, .collapsing) a:has(.luno-dropdown-photo) > .links-text {
  flex: 1 1 auto; min-width: 0; white-space: normal !important;
}

/* A single, uninterrupted mobile accordion animation. Keep spacing inside the
   measured content so a collapsing panel can reach zero height without a snap. */
html.mobile-header-active .mobile-main-menu-container {
  transition: transform 240ms cubic-bezier(.2,.8,.2,1) !important;
  will-change: transform;
}
html.mobile-header-active .mobile-main-menu-wrapper .main-menu {
  overflow-anchor: none;
  overscroll-behavior: contain;
}
html.mobile-header-active .mobile-main-menu-wrapper .main-menu :is(.collapse, .collapsing) {
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}
html.mobile-header-active .mobile-main-menu-wrapper .main-menu :is(.collapse, .collapsing) > .j-menu {
  padding: 5px 6px 12px !important;
  margin: 0 !important;
}
html.mobile-header-active .mobile-main-menu-wrapper .main-menu .collapsing {
  transition: height 220ms cubic-bezier(.2,.65,.3,1) !important;
  overflow: hidden !important;
}
@media (prefers-reduced-motion: reduce) {
  html.mobile-header-active .mobile-main-menu-container,
  html.mobile-header-active .mobile-main-menu-wrapper .main-menu .collapsing { transition-duration: 1ms !important; }
}

/* Category identity and existing category photos in desktop dropdowns. */
html.desktop-header-active .desktop-main-menu-wrapper .main-menu .j-dropdown {
  background: #fff !important; background-image: none !important;
  isolation: isolate; box-shadow: 0 12px 28px rgba(52,25,34,.14) !important;
}
html.desktop-header-active .desktop-main-menu-wrapper .main-menu .j-dropdown > .j-menu {
  background: #fff !important;
}
html:not(.mobile-header-active) .main-menu .dropdown-menu .luno-dropdown-photo {
  width: 36px !important; height: 36px !important; flex: 0 0 36px;
  object-fit: contain; background: #fff; border-radius: 7px; margin-right: 12px;
}
html:not(.mobile-header-active) .main-menu .dropdown-menu .j-menu > .menu-item > a:has(.luno-dropdown-photo) {
  display: flex !important; align-items: center !important;
  min-height: 48px; padding-top: 6px !important; padding-bottom: 6px !important;
}
html:not(.mobile-header-active) .main-menu .dropdown-menu .luno-dropdown-heading {
  display: flex !important; align-items: center; padding: 12px 15px;
  margin-bottom: 4px; border-bottom: 1px solid #eee5e8;
  color: #712438; font-size: 14px; font-weight: 700; line-height: 20px;
}

/* Balance each sentence without shrinking the home introduction text. */
.module-title-147 .luno-balanced-sentence { display: block; }
@media (max-width: 767px) {
  html.mobile-header-active .module-title-147 .subtitle {
    text-wrap: balance !important;
    max-width: 36ch !important; margin-left: auto !important; margin-right: auto !important;
  }
  html.mobile-header-active .module-title-147 .luno-balanced-sentence {
    display: block; text-wrap: balance;
  }
}

/* Bring the home hero closer to the mobile header. */
@media (max-width: 767px) {
  html.mobile-header-active.route-common-home body .top-row .grid-row-top-1 {
    padding-top: 8px !important;
  }
}

/* Center mobile card actions in two equal cells, including home carousels. */
@media (max-width: 767px) {
  html.mobile-header-active body :is(#content .main-products.product-grid, .module-products-grid .product-grid) .product-thumb .button-group {
    display: flex !important; align-items: center !important; justify-content: center !important;
    padding-left: 0 !important; padding-right: 0 !important; gap: 0 !important;
  }
  html.mobile-header-active body :is(#content .main-products.product-grid, .module-products-grid .product-grid) .product-thumb .button-group :is(.cart-group, .wish-group) {
    display: flex !important; align-items: center !important; justify-content: center !important;
    flex: 1 1 0 !important; width: 50% !important; min-width: 0 !important;
    margin: 0 !important; padding: 0 !important;
  }
  html.mobile-header-active body :is(#content .main-products.product-grid, .module-products-grid .product-grid) .product-thumb .button-group :is(.btn-cart, .btn-wishlist) {
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    flex: 0 0 44px !important; width: 44px !important; height: 44px !important;
    margin: 0 !important; padding: 0 !important;
  }
}

/* Calm, consistent mobile filter drawer. Desktop sidebar remains untouched. */
.luno-filter-footer { display: none; }
@media (max-width: 767px) {
  html.mobile-header-active #luno-mobile-filters {
    display: flex !important; flex-direction: column !important;
    width: min(400px, calc(100% - 28px)) !important;
    background: #fff !important;
  }
  html.mobile-header-active #luno-mobile-filters .mobile-wrapper-header {
    flex: 0 0 64px !important; height: 64px !important;
    padding: 0 20px !important; gap: 12px !important;
    background: #fff !important; border-bottom: 1px solid #eee5e8 !important;
  }
  html.mobile-header-active #luno-mobile-filters .mobile-wrapper-header > span {
    font-family: Montserrat, sans-serif !important; font-size: 16px !important;
    font-weight: 700 !important; line-height: 24px !important;
    color: #333 !important; letter-spacing: .56px !important; text-transform: uppercase !important;
    margin-right: auto !important;
  }
  html.mobile-header-active #luno-mobile-filters .mobile-wrapper-header .reset-filter {
    background: transparent !important; border: 0 !important; box-shadow: none !important;
    color: #712438 !important; font-size: 14px !important; font-weight: 600 !important;
    text-transform: none !important; padding: 8px 6px !important; min-height: 44px !important;
    margin-right: 6px !important;
  }
  html.mobile-header-active #luno-mobile-filters .reset-filter::before { display: none !important; }
  html.mobile-header-active #luno-mobile-filters .mobile-wrapper-header .x { width: 32px !important; min-width: 32px !important; height: 44px !important; margin: 0 -6px 0 0 !important; color: #5c5055 !important; }
  html.mobile-header-active #luno-mobile-filters .mobile-filter-wrapper {
    flex: 1 1 auto !important; min-height: 0 !important; height: auto !important;
    padding: 6px 20px 24px !important; overflow-y: auto !important; overflow-x: hidden !important;
    overscroll-behavior: contain; background: #fff !important;
  }
  html.mobile-header-active #luno-mobile-filters .module-filter { margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: #fff !important; }
  html.mobile-header-active #luno-mobile-filters .module-filter > h3:empty { display: none !important; }
  html.mobile-header-active #luno-mobile-filters .module-filter > h3 { margin: 0 !important; padding: 0 !important; height: 0 !important; border: 0 !important; }
  html.mobile-header-active #luno-mobile-filters .module-filter .panel-group { margin: 0 !important; }
  html.mobile-header-active #luno-mobile-filters .module-filter .panel {
    margin: 0 !important; border: 0 !important; border-bottom: 1px solid #eee5e8 !important; box-shadow: none !important; border-radius: 0 !important;
  }
  html.mobile-header-active #luno-mobile-filters .module-filter .panel-heading { margin: 0 !important; padding: 0 !important; background: transparent !important; border: 0 !important; }
  html.mobile-header-active #luno-mobile-filters .module-filter .panel-heading a {
    display: flex !important; align-items: center !important; justify-content: space-between !important;
    min-height: 58px !important; padding: 12px 0 !important; gap: 12px !important;
    color: #392e33 !important; font-size: 15px !important; font-weight: 600 !important;
    text-align: left !important; text-transform: none !important; letter-spacing: 0 !important;
    flex-direction: row !important;
  }
  html.mobile-header-active #luno-mobile-filters .module-filter .panel-heading a::before,
  html.mobile-header-active #luno-mobile-filters .module-filter .panel-heading a > i { display: none !important; }
  html.mobile-header-active #luno-mobile-filters .module-filter .panel-heading a::after {
    content: '' !important; display: block !important; position: static !important;
    flex: 0 0 8px !important; width: 8px !important; height: 8px !important;
    margin: 0 4px 4px 0 !important; border-right: 1.5px solid #796a70 !important;
    border-bottom: 1.5px solid #796a70 !important; transform: rotate(45deg) !important;
    background: none !important; transition: transform .18s ease;
  }
  html.mobile-header-active #luno-mobile-filters .module-filter .panel-heading a[aria-expanded="true"]::after { transform: rotate(225deg) !important; margin-bottom: -4px !important; }
  html.mobile-header-active #luno-mobile-filters .module-filter .panel-body { padding: 0 0 20px !important; border: 0 !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-brand-image-filter {
    display: block !important; max-height: 280px; overflow-y: auto; padding-right: 4px;
  }
  html.mobile-header-active #luno-mobile-filters .lunoria-brand-image-filter > label {
    display: flex; align-items: center !important; justify-content: flex-start !important;
    gap: 10px !important; width: 100% !important; min-height: 44px !important; height: auto !important;
    padding: 8px 2px !important; margin: 0 !important; border: 0 !important;
    border-bottom: 1px solid #f1ebed !important; border-radius: 0 !important; box-shadow: none !important;
  }
  html.mobile-header-active #luno-mobile-filters .lunoria-brand-image-filter > label[hidden] { display: none !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-brand-image-filter img { display: none !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-brand-image-filter .links-text {
    display: block !important; flex: 1 1 auto !important; color: #51434a !important; font-size: 14px !important; font-weight: 500 !important;
  }
  html.mobile-header-active #luno-mobile-filters .lunoria-brand-image-filter .count-badge {
    display: block !important; background: transparent !important; color: #8e8086 !important; font-size: 11px !important; margin-left: auto !important;
    position: static !important; inset: auto !important; transform: none !important; width: auto !important;
    height: auto !important; min-width: 0 !important; padding: 0 !important; border: 0 !important; line-height: 20px !important;
  }
  html.mobile-header-active #luno-mobile-filters .lunoria-brand-image-filter input[type="checkbox"] {
    position: relative !important; inset: auto !important; opacity: 1 !important; pointer-events: auto !important;
    flex: 0 0 18px !important; width: 18px !important; min-width: 18px !important; max-width: 18px !important;
    height: 18px !important; min-height: 18px !important; max-height: 18px !important;
    border: 1.5px solid #a98893 !important; border-radius: 4px !important;
  }
  html.mobile-header-active #luno-mobile-filters .lunoria-brand-filter-search input { box-shadow: none !important; outline: none !important; font-size: 16px !important; }
  html.mobile-header-active #luno-mobile-filters .extra-controls {
    display: grid !important; grid-template-columns: 12px minmax(0,1fr) 12px minmax(0,1fr) !important;
    align-items: center !important; gap: 8px !important; margin: 12px 0 0 !important;
  }
  html.mobile-header-active #luno-mobile-filters .extra-controls input {
    width: 100% !important; min-width: 0 !important; height: 46px !important;
    margin: 0 !important; padding: 0 10px !important; border: 1px solid #ded4d7 !important;
    border-radius: 10px !important; background: #fff !important; box-shadow: none !important;
    font-size: 16px !important; font-weight: 500 !important; color: #392e33 !important;
  }
  html.mobile-header-active #luno-mobile-filters .extra-controls .currency-symbol { margin: 0 !important; color: #796a70 !important; font-size: 14px !important; }
  html.mobile-header-active #luno-mobile-filters .irs-bar { background: #712438 !important; height: 3px !important; border: 0 !important; }
  html.mobile-header-active #luno-mobile-filters .irs-line { height: 3px !important; background: #ede5e8 !important; border: 0 !important; }
  html.mobile-header-active #luno-mobile-filters .irs-line > * { background: none !important; }
  html.mobile-header-active #luno-mobile-filters .irs-slider { background: #fff !important; border: 3px solid #712438 !important; box-shadow: 0 1px 4px rgba(70,30,45,.12) !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-navigation-panel { margin: 20px 0 0 !important; padding: 0 !important; border: 0 !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-navigation-title {
    font-size: 15px !important; font-weight: 600 !important; line-height: 24px !important;
    color: #392e33 !important; letter-spacing: 0 !important; text-transform: none !important; margin: 0 0 8px !important; padding: 0 !important;
  }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-node { border-color: #f1ebed !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-node > a,
  html.mobile-header-active #luno-mobile-filters .lunoria-category-node > details > summary { min-height: 50px !important; padding: 3px 0 !important; font-size: 14px !important; color: #51434a !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-node > details > summary > a,
  html.mobile-header-active #luno-mobile-filters .lunoria-category-name { font-weight: 600 !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-name { flex: 1; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-tree { width: auto !important; min-width: 0 !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-name { min-width: 0 !important; white-space: normal !important; overflow-wrap: anywhere; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-node > a,
  html.mobile-header-active #luno-mobile-filters .lunoria-category-node > details > summary {
    display: flex !important; align-items: center !important; gap: 12px !important;
    min-height: 64px !important; padding: 8px 0 !important; font-weight: 600 !important;
  }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-photo {
    display: block !important; flex: 0 0 44px !important; width: 44px !important; height: 44px !important;
    margin: 0 !important; padding: 3px !important; object-fit: contain !important;
    border: 1px solid #eee5e8 !important; border-radius: 9px !important; background: #fff !important;
  }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-view-all > a { color: #712438 !important; font-weight: 600 !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-toggle {
    flex: 0 0 44px !important; width: 44px !important; min-height: 44px !important;
    padding: 0 !important; border-radius: 8px !important; background: transparent !important;
  }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-toggle-label { display: none !important; }
  html.mobile-header-active #luno-mobile-filters .lunoria-category-toggle::before {
    content: '' !important; display: block !important; width: 8px !important; height: 8px !important;
    border-right: 1.5px solid #796a70 !important; border-bottom: 1.5px solid #796a70 !important;
    transform: rotate(45deg) !important; margin: -4px 0 0 !important;
  }
  html.mobile-header-active #luno-mobile-filters details[open] > summary .lunoria-category-toggle::before { transform: rotate(225deg) !important; margin-top: 4px !important; }
  html.mobile-header-active #luno-mobile-filters .luno-filter-footer {
    display: block !important; flex: 0 0 auto !important; padding: 12px 20px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
    background: #fff !important; border-top: 1px solid #eee5e8 !important;
  }
  html.mobile-header-active #luno-mobile-filters .luno-filter-done {
    width: 100% !important; min-height: 46px !important; padding: 12px 16px !important;
    background: #712438 !important; color: #fff !important; border: 0 !important; border-radius: 10px !important;
    font-family: Montserrat, sans-serif !important; font-size: 14px !important; font-weight: 600 !important;
    line-height: 22px !important; cursor: pointer !important;
  }
}

/* Secondary catalog paging controls on mobile. */
@media (max-width: 767px) {
  html.mobile-header-active body .main-products .ias-trigger {
    display: flex !important;
    justify-content: center !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    padding: 4px 0 16px !important;
    margin: 0 !important;
  }
  html.mobile-header-active body #content .main-products .ias-trigger > a.btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 100% !important;
    min-height: 44px !important;
    height: auto !important;
    padding: 11px 16px !important;
    margin: 0 !important;
    border: 1px solid #ded4d7 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #712438 !important;
    box-shadow: none !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 20px !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    white-space: normal !important;
    text-align: center !important;
  }
  html.mobile-header-active body #content .main-products .ias-trigger > a.btn::before {
    font-size: 15px !important;
    margin-right: 8px !important;
  }
  html.mobile-header-active body #content .main-products .ias-trigger > a.btn:hover {
    background: #faf4f6 !important;
    color: #712438 !important;
    border-color: #b98b9a !important;
  }
}

/* Match the mobile menu title to the Basket drawer title. */
html.mobile-header-active .mobile-main-menu-container .mobile-wrapper-header > span {
  font-family: Montserrat, sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
  letter-spacing: .56px !important;
  color: #333 !important;
  text-transform: uppercase !important;
}

/* Mobile filters belong to the catalog toolbar, never over product photos. */
html.desktop-header-active .mobile-filter-trigger { display: none !important; }
@media (max-width: 767px) {
  html.mobile-header-active body > .mobile-filter-trigger { display: none !important; }
  html.mobile-header-active body .products-filter.luno-mobile-catalog-controls {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 0 !important;
    margin: 0 0 16px !important;
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #eee5e8 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }
  html.mobile-header-active body .luno-mobile-catalog-controls .grid-list,
  html.mobile-header-active body .luno-mobile-catalog-controls .eu-choice-filter-limit { display: none !important; }
  html.mobile-header-active body .luno-mobile-catalog-controls .select-group {
    display: flex !important; flex: 1 1 0 !important; width: auto !important; min-width: 0 !important; margin: 0 !important;
  }
  html.mobile-header-active body .luno-mobile-catalog-controls .eu-choice-filter-sort { width: 100% !important; min-width: 0 !important; }
  html.mobile-header-active body .luno-mobile-catalog-controls summary { height: 44px !important; box-shadow: none !important; border-radius: 10px !important; }
  html.mobile-header-active body .luno-mobile-catalog-controls summary:focus {
    outline: none !important;
    box-shadow: none !important;
  }
  html.mobile-header-active body .luno-mobile-catalog-controls summary:focus-visible {
    box-shadow: inset 0 0 0 1px #712438 !important;
  }
  html.mobile-header-active body .luno-mobile-catalog-controls .mobile-filter-trigger.btn {
    position: static !important; inset: auto !important; transform: none !important;
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    flex: 0 0 108px !important; width: 108px !important; height: 44px !important;
    min-height: 44px !important; padding: 0 12px !important; margin: 0 !important;
    background: #fff !important; color: #712438 !important;
    border: 1px solid #d8c4cb !important; border-radius: 10px !important;
    box-shadow: none !important; font-size: 13px !important; font-weight: 600 !important;
    line-height: 1 !important; letter-spacing: 0 !important; text-transform: none !important;
    cursor: pointer !important; transition: background-color .18s ease, border-color .18s ease !important;
  }
  html.mobile-header-active body .luno-mobile-catalog-controls .mobile-filter-trigger.btn::before { font-size: 17px !important; margin-right: 7px !important; }
  html.mobile-header-active body .luno-mobile-catalog-controls .mobile-filter-trigger.btn:hover,
  html.mobile-header-active body .luno-mobile-catalog-controls .mobile-filter-trigger.btn:focus-visible { background: #faf4f6 !important; border-color: #712438 !important; color: #712438 !important; }
  html.mobile-header-active body .products-filter.luno-catalog-controls-fixed {
    position: fixed !important; top: var(--luno-controls-top) !important; left: 0 !important; right: 0 !important;
    width: 100% !important; z-index: 99 !important; margin: 0 !important;
    padding-left: var(--luno-controls-left) !important;
    padding-right: var(--luno-controls-left) !important;
    box-shadow: 0 6px 12px rgba(62, 34, 43, .05) !important;
  }
  html.mobile-header-active body .products-filter.luno-catalog-controls-fixed::before {
    content: '';
    position: absolute;
    top: -8px; left: 0; right: 0; height: 8px;
    background: #fff;
    pointer-events: none;
  }
}

/* Compact, content-sized CTAs across all three hero slides. */
body .module-master_slider-26 .module-item .module-subitem-3.ms-layer-button.btn {
  box-sizing: border-box !important;
  display: inline-flex; align-items: center !important; justify-content: center !important;
  width: max-content !important; height: 40px !important;
  min-width: 0 !important; min-height: 0 !important;
  padding: 8px 18px !important; border-radius: 999px !important;
  font-family: Montserrat, sans-serif !important; font-size: 13px !important;
  font-weight: 700 !important; line-height: 20px !important; letter-spacing: 0 !important;
  white-space: nowrap !important;
}
body .module-master_slider-26 .module-item .module-subitem-3.ms-layer-button.btn > span {
  font: inherit !important; letter-spacing: inherit !important;
}
@media (max-width: 767px) {
  body .module-master_slider-26 .module-item .module-subitem-3.ms-layer-button.btn {
    width: max-content !important; height: 36px !important; padding: 8px 14px !important;
    font-size: 11px !important; line-height: 16px !important;
  }
}

/* Slightly larger eyebrow labels on the three homepage hero slides. */
.module-master_slider-26 .module-subitem-1.ms-layer-text {
  font-size: 15px !important; line-height: 21px !important;
  padding: 5px 8px !important;
}
@media (max-width: 767px) {
  .module-master_slider-26 .module-subitem-1.ms-layer-text {
    font-size: clamp(7.5px, 2.1vw, 16px) !important;
    line-height: 1.35 !important; padding: 2.5px 4px !important;
  }
}

/* Drawer photos do not change the desktop sidebar layout. */
html:not(.mobile-header-active) .lunoria-category-photo { display: none; }

/* Four compact subcategory cards per mobile carousel viewport. */
@media (max-width: 760px) {
  html.mobile-header-active #content .refine-categories .refine-item > a {
    padding: 6px !important;
    box-shadow: none !important;
  }
  html.mobile-header-active #content .refine-categories .refine-item img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1;
    object-fit: contain;
  }
  html.mobile-header-active #content .refine-categories .refine-name {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-height: 34px !important;
    margin: 4px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 14px !important;
  }
}

/* Mobile navigation uses the same photos as the corresponding catalog categories.
   Reuse catalog thumbnails instead of independently selected product photos. */
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-3 { --lunoria-menu-image: url('/image/cache/catalog/categories/n12982-svakom-margot-gspot-vibrator-lilac-1-2-1100x1100-240x240.jpg'); }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-4 { --lunoria-menu-image: url('/image/cache/catalog/categories/n11775-15inch-realistic-Silicone-Dual-Density-Dildo-wSuction-Cup-wBalls-1-240x240.jpg'); }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-5 { --lunoria-menu-image: url('/image/cache/catalog/products/oneonone/n12497/n12497-rev-pro-10-function-remote-controlled-prostate-massager-1-240x240.jpg'); }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-6 { --lunoria-menu-image: url('/image/cache/catalog/categories/n11813-intt-inflate-xxl-1-1000x1000-240x240.jpg'); }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-7 { --lunoria-menu-image: url('/image/cache/catalog/categories/n11482-dj-vicky-vette-deep-throat-sucker-vibrating-masturbator-1-1-1100x1100-240x240.jpg'); }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-8 { --lunoria-menu-image: url('/image/cache/catalog/categories/n11401-bound-to-please-flogger-1100x1100-240x240.jpg'); }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-9 { --lunoria-menu-image: url('/image/cache/catalog/categories/n9820-lubido-lubricant-250ml-1-1-240x240.jpg'); }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-10 { --lunoria-menu-image: url('/image/cache/catalog/products/oneonone/n11524/n11524-leg-ave-lace-suspender-bodystocking-os-1-scaled-240x240h.jpg'); }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-11 { --lunoria-menu-image: url('/image/cache/catalog/categories/N8685-duck-with-a-dick-240x240.jpg'); }
html.mobile-header-active .mobile-main-menu-wrapper .main-menu > .j-menu > .main-menu-item-12 { --lunoria-menu-image: url('/image/cache/catalog/products/oneonone/n12541/n12541-safe-sex-anti-bacterial-toy-bag-med-1-240x240.jpg'); }

/* Keep the announcement strip in the same visual family as the category bar. */
html body #lunoria-annbar {
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 16px !important;
  border-bottom: 1px solid rgba(255, 255, 255, .1) !important;
  background: #712438 linear-gradient(95deg, #712438 0%, #812b40 50%, #712438 100%) !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .015em !important;
  line-height: 1.25 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

html body #lunoria-annbar .msg {
  gap: 8px !important;
}

html body #lunoria-annbar .icon {
  width: 20px !important;
  height: 20px !important;
  flex-basis: 20px !important;
  background: rgba(255, 255, 255, .1) !important;
}

html body #lunoria-annbar .icon svg {
  width: 12px !important;
  height: 12px !important;
}

@media (max-width: 767px) {
  html body #lunoria-annbar {
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 10px !important;
    font-size: 10px !important;
    letter-spacing: .01em !important;
  }

  html body #lunoria-annbar .msg {
    gap: 6px !important;
  }

  html body #lunoria-annbar .icon {
    width: 18px !important;
    height: 18px !important;
    flex-basis: 18px !important;
  }

  html body #lunoria-annbar .icon svg {
    width: 11px !important;
    height: 11px !important;
  }
}
/* Keep the document scroll root when opening filters; no clipped backdrop. */
html.mobile-header-active.mobile-overlay.mobile-filter-container-open {
  overflow-x: clip !important; overflow-y: visible !important;
}
html.mobile-header-active.mobile-filter-container-open body {
  overflow-x: clip !important; overflow-y: visible !important;
}
html.mobile-header-active.mobile-filter-container-open .site-wrapper::before {
  background: transparent !important;
}
/* Desktop category catalogs: four cards per row; list and mobile views unchanged. */
@media (min-width: 1025px) {
  html.desktop-header-active.route-product-category .main-products.product-grid > .product-layout {
    width: 25% !important;
    max-width: 25% !important;
    flex: 0 0 25% !important;
  }
}
/* Keep actions on one line in the denser desktop product grids. */
@media (min-width: 1025px) {
  html.desktop-header-active :is(.main-products.product-grid, .module-products-grid .product-grid) .button-group {
    display: flex !important; flex-wrap: nowrap !important;
    align-items: center !important; gap: 6px !important;
    padding: 0 !important; width: 100% !important;
  }
  html.desktop-header-active :is(.main-products.product-grid, .module-products-grid .product-grid) .cart-group {
    flex: 1 1 0 !important; min-width: 0 !important; width: auto !important; margin: 0 !important;
  }
  html.desktop-header-active :is(.main-products.product-grid, .module-products-grid .product-grid) .btn-cart {
    display: flex !important; align-items: center !important; justify-content: center !important;
    width: 100% !important; min-width: 0 !important; height: 40px !important;
    padding: 0 3px !important; margin: 0 !important;
    font-size: 12px !important; line-height: 18px !important; white-space: nowrap !important;
  }
  html.desktop-header-active :is(.main-products.product-grid, .module-products-grid .product-grid) .wish-group {
    flex: 0 0 36px !important; width: 36px !important; margin: 0 !important;
  }
  html.desktop-header-active :is(.main-products.product-grid, .module-products-grid .product-grid) .btn-wishlist {
    display: flex !important; align-items: center !important; justify-content: center !important;
    width: 36px !important; height: 40px !important; padding: 0 !important; margin: 0 !important;
  }
}
@media (min-width: 1025px) and (max-width: 1200px) {
  html.desktop-header-active :is(.main-products.product-grid, .module-products-grid .product-grid) .btn-cart { font-size: 10px !important; }
}
.luno-budget-heading { text-align: center; margin: 0 0 26px; }
.luno-budget-eyebrow { color: #8a6370; font: 600 11px/18px Montserrat, sans-serif; letter-spacing: 1.8px; text-transform: uppercase; margin-bottom: 8px; }
.luno-budget-heading h2 { margin: 0; color: #392e33; font: 700 32px/1.3 Montserrat, sans-serif; letter-spacing: -.6px; }
.luno-budget-heading h2 span { color: #712438; }
@media (max-width: 767px) {
  .luno-budget-heading { margin-bottom: 20px; padding: 0 12px; }
  .luno-budget-heading h2 { font-size: 24px; letter-spacing: -.4px; }
  .luno-budget-eyebrow { font-size: 10px; letter-spacing: 1.4px; }
}
/* A clear, restrained trust introduction without the ghosted watermark. */
html body .module-title-147 .title-wrapper {
  padding: 32px 24px !important;
  background: #fcf9fa !important;
  border: 1px solid #eee3e7 !important;
  border-radius: 18px !important;
  text-align: center !important;
}
html body .module-title-147 .title-wrapper::before,
html body .module-title-147 .title-wrapper::after { content: none !important; display: none !important; }
html body .module-title-147 h3 {
  margin: 0 !important; padding: 0 !important;
  font: 700 30px/1.3 Montserrat, sans-serif !important;
  letter-spacing: -.5px !important; color: #392e33 !important;
}
html body .module-title-147 .title-divider {
  width: 44px !important; height: 3px !important; min-height: 0 !important;
  margin: 16px auto 18px !important; background: #8a3b50 !important;
  border: 0 !important; border-radius: 3px !important;
}
html body .module-title-147 .subtitle {
  max-width: 720px !important; margin: 0 auto !important; padding: 0 !important;
  font: 400 15px/1.8 Montserrat, sans-serif !important;
  color: #685860 !important; letter-spacing: 0 !important;
}
html body .module-title-147 .luno-balanced-sentence { text-wrap: balance; }
@media (max-width: 767px) {
  html body .module-title-147 .title-wrapper { padding: 26px 18px !important; border-radius: 14px !important; }
  html body .module-title-147 h3 { font-size: 23px !important; letter-spacing: -.4px !important; text-wrap: balance; }
  html body .module-title-147 .subtitle { font-size: 13px !important; line-height: 1.75 !important; max-width: 36ch !important; }
  html body .module-title-147 .luno-balanced-sentence + .luno-balanced-sentence { margin-top: 6px; }
}
/* The collection CTA shares the brand accent and a generous tap target. */
html body .module-button-263 { text-align: center !important; margin-top: 20px !important; }
html body .module-button-263 > a.btn {
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  gap: 14px !important; min-height: 48px !important; min-width: 228px !important;
  padding: 12px 26px !important; border: 1px solid #712438 !important; border-radius: 999px !important;
  background: #712438 !important; color: #fff !important; box-shadow: none !important;
  font: 600 13px/20px Montserrat, sans-serif !important; letter-spacing: .2px !important;
  text-transform: none !important; text-decoration: none !important;
  transition: background-color .18s ease, border-color .18s ease !important;
}
html body .module-button-263 > a.btn::before { display: none !important; }
html body .module-button-263 > a.btn::after {
  content: '\2192' !important; font: 400 23px/20px Arial, sans-serif !important;
  margin: 0 !important; position: static !important; transform: none !important;
}
html body .module-button-263 > a.btn:hover { background: #572033 !important; border-color: #572033 !important; }
html body .module-button-263 > a.btn:focus-visible { outline: 2px solid #a76a7e !important; outline-offset: 4px; }
@media (max-width: 767px) {
  html body .module-button-263 > a.btn { min-height: 46px !important; min-width: 220px !important; }
  .luno-featured-heading h2 { text-wrap: balance; }
}
/* Product-page actions share one centerline, with no asymmetric wishlist margin. */
html.route-product-product:not(.popup) .product-info .cart-group > .extra-group { margin-left: 0 !important; }
html.route-product-product:not(.popup) .product-info #button-cart {
  display: flex !important; align-items: center !important; justify-content: center !important;
  text-align: center !important;
}
html.route-product-product:not(.popup) .product-info #button-cart > .btn-text {
  margin: 0 !important; padding: 0 !important; line-height: 20px !important;
}
html.route-product-product:not(.popup) .product-info .wishlist-compare {
  display: flex !important; justify-content: center !important; align-items: center !important;
  width: 100% !important; margin: 0 !important; padding: 0 !important;
}
html.route-product-product:not(.popup) .product-info .wishlist-compare > .btn-wishlist {
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  flex: 0 0 auto !important; width: auto !important; min-height: 48px !important;
  gap: 12px !important; margin: 0 !important; padding: 0 !important;
}
html.route-product-product:not(.popup) .product-info .wishlist-compare > .btn-wishlist::before {
  flex: 0 0 24px !important; width: 24px !important; line-height: 24px !important;
  margin: 0 !important; text-align: center !important;
}
html.route-product-product:not(.popup) .product-info .wishlist-compare .btn-wishlist .btn-text::after {
  display: block !important; line-height: 20px !important;
}
html body .module-newsletter-67 .luno-newsletter-consent {
  margin: 12px 0 0 !important; padding: 0 !important;
  font: 400 12px/1.7 Montserrat, sans-serif !important;
  color: #756a70 !important; text-align: left !important;
  white-space: nowrap !important;
}
@media (max-width: 767px) {
  html body .module-newsletter-67 .luno-newsletter-consent {
    font-size: clamp(10px, 2.8vw, 12px) !important;
  }
}
html body .module-newsletter-67 .luno-newsletter-consent a {
  color: #712438 !important; font-weight: 600 !important;
  text-decoration: underline !important; text-underline-offset: 2px;
}
/* Keep the offer pagination to a small moving window of dots. */
html body .module-products-27 .swiper-pagination,
html body .module-products-301 .swiper-pagination,
html body .module-testimonials-256 .swiper-pagination {
  white-space: nowrap !important;
  overflow: hidden !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
html body .module-products-27 .swiper-pagination-bullet,
html body .module-products-301 .swiper-pagination-bullet,
html body .module-testimonials-256 .swiper-pagination-bullet {
  display: none !important;
  margin: 0 !important;
  width: 8px !important;
  height: 8px !important;
  flex: 0 0 8px !important;
  transform: none !important;
}
html body .module-products-27 .swiper-pagination-bullet.luno-dot-visible,
html body .module-products-301 .swiper-pagination-bullet.luno-dot-visible,
html body .module-testimonials-256 .swiper-pagination-bullet.luno-dot-visible {
  display: block !important;
}
html body .module-button-263 {
  display: none !important;
}
/* Give the blog card copy breathing room without insetting its image/stats bar. */
/* Matching compact switches for the two homepage product shelves. */
html body .module-title-143 .title-wrapper::before,
html body .module-title-143 .title-wrapper::after { content: none !important; }
html body .module-title-143 .luno-brand-heading { margin-bottom: 10px !important; }
@media (min-width: 768px) {
  html.route-common-home body #bottom .grid-row-bottom-2 { padding-top: 40px !important; }
}
html body .module-title-143 .luno-brand-heading h2 {
  max-width: 34ch; margin-left: auto !important; margin-right: auto !important;
  text-wrap: balance;
}
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs {
  display: flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  justify-content: center !important;
  gap: 4px !important;
  margin: 0 auto 28px !important;
  padding: 5px !important;
  background: #f8f3f5 !important;
  border: 1px solid #eee1e6 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li {
  flex: 0 1 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  min-width: 110px !important;
  padding: 10px 24px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  color: #68545c !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 20px !important;
  text-transform: none !important;
  box-shadow: none !important;
  transition: background .18s ease, color .18s ease;
}
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li.active > a,
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li.active > a:hover,
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li.active > a:focus {
  background: #712438 !important;
  color: #fff !important;
}
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li:not(.active) > a:hover {
  background: #eee2e7 !important;
  color: #712438 !important;
}
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs::before,
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs::after,
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li::before,
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li::after,
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li > a::before,
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li > a::after {
  display: none !important;
}
html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs a:focus-visible {
  outline: 2px solid #712438 !important;
  outline-offset: 3px !important;
}
@media (max-width: 767px) {
  html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs { margin-bottom: 20px !important; gap: 2px !important; padding: 4px !important; }
  html body :is(.module-products-27, .module-products-301, .module-blog_posts-40, .module-side_products-39) .nav-tabs > li > a {
    min-width: 78px !important; min-height: 42px !important;
    padding: 10px 14px !important; font-size: 12px !important;
  }
}
/* Homepage Journal: quieter editorial cards, with clear reading hierarchy. */
html.route-common-home body .grid-row-bottom-4 {
  background: #faf5f7 !important;
  padding-top: 44px !important;
  padding-bottom: 40px !important;
}
html body .module-title-162 .title-wrapper::before,
html body .module-title-162 .title-wrapper::after { content: none !important; }
html body .module-title-162 .luno-journal-heading { margin-bottom: 24px !important; }
html.route-common-home body .grid-row-bottom-4 .grid-col-bottom-4-1 { margin-bottom: 0 !important; }
html body .module-title-162 .luno-journal-heading p {
  margin: 14px auto 0 !important;
  max-width: 56ch !important;
  padding: 0 12px !important;
  font: 400 14px/1.7 Montserrat, sans-serif !important;
  color: #75656d !important;
  text-wrap: balance;
}
html body .module-blog_posts-40 .post-thumb {
  border: 1px solid #eee3e7 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: none !important;
}
html body .module-blog_posts-40 .post-thumb .post-stats { display: none !important; }
html body .module-blog_posts-40 .post-thumb .caption > .name {
  margin-top: 20px !important;
  margin-bottom: 10px !important;
  height: 46px !important;
  font: 600 16px/23px Montserrat, sans-serif !important;
  color: #392e33 !important;
  text-align: center !important;
}
html body .module-blog_posts-40 .post-thumb .caption > .name a {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  white-space: normal !important;
  overflow: hidden !important;
  color: inherit !important;
  font: inherit !important;
}
html body .module-blog_posts-40 .post-thumb .caption > .description {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  overflow: hidden !important;
  height: 69px !important;
  margin-top: 0 !important;
  margin-bottom: 20px !important;
  font: 400 13px/23px Montserrat, sans-serif !important;
  color: #75656d !important;
  text-align: center !important;
}
/* Compact dusty-rose recently viewed / most viewed shelf. */
html body div.grid-row:has(.module-side_products.module-side_products-39) {
  background: #a5959b !important;
  border-top: 1px solid #9c8991 !important;
  border-bottom: 1px solid #9c8991 !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}
html body .module-side_products-39 .luno-explore-heading { margin-bottom: 14px !important; }
html body .module-side_products-39 .luno-budget-eyebrow { display: none; }
html body .module-side_products-39 .luno-explore-heading h2 { color: #392e33 !important; font-size: 24px !important; line-height: 1.3 !important; margin: 0 !important; }
html body .module-side_products-39 .luno-explore-heading h2 span { color: #712438 !important; }
html body .module-side_products-39 .nav-tabs { background: #f6eef1 !important; border-color: #cbb2bd !important; margin-bottom: 18px !important; padding: 4px !important; }
html body .module-side_products-39 .nav-tabs > li > a { color: #5d4853 !important; min-height: 36px !important; padding: 8px 18px !important; line-height: 20px !important; font-size: 12px !important; }
html body .module-side_products-39 .nav-tabs > li:not(.active) > a:hover { background: #e9d7df !important; color: #712438 !important; }
html body .module-side_products-39 .nav-tabs a:focus-visible { outline-color: #712438 !important; }
html body .module-side_products-39 .side-product {
  height: 100% !important;
  padding: 10px !important;
  border: 1px solid #eadfe3 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden;
}
html body .module-side_products-39 .swiper-wrapper { align-items: stretch; }
html body .module-side_products-39 .product-layout { height: auto !important; }
html body .module-side_products-39 .image,
html body .module-side_products-39 .product-img { height: 106px !important; }
html body .module-side_products-39 .image img { width: 100% !important; height: 106px !important; object-fit: contain !important; }
html body .module-side_products-39 .caption {
  padding: 8px 0 0 !important;
  display: flex !important;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}
html body .module-side_products-39 .name {
  height: 36px !important;
  margin: 0 0 6px !important;
  text-align: left !important;
}
html body .module-side_products-39 .name a {
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: normal !important;
  overflow: hidden !important;
  line-height: 18px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #41363b !important;
}
html body .module-side_products-39 .price {
  margin: 0 0 4px !important;
  min-height: 22px;
  font-size: 14px !important;
}
html body .module-side_products-39 .button-group {
  margin-top: auto !important;
  justify-content: center !important;
  gap: 12px;
}
@media (max-width: 767px) {
  html body div.grid-row:has(.module-side_products.module-side_products-39) { padding-top: 20px !important; padding-bottom: 20px !important; }
  html body .module-side_products-39 .side-product { padding: 12px !important; }
  html body .module-side_products-39 .luno-explore-heading h2 { font-size: 22px !important; }
  html body .module-side_products-39 .nav-tabs > li > a { padding-left: 12px !important; padding-right: 12px !important; }
}
html body .module-blog_posts-40 .post-thumb .button-group {
  justify-content: flex-start !important;
  padding: 0 24px 24px !important;
  margin: 0 !important;
}
html body .module-blog_posts-40 .post-thumb .btn-read-more {
  color: #712438 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  min-height: 32px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: none !important;
}
html body .module-blog_posts-40 .post-thumb .p-date-image {
  top: 12px !important; left: 12px !important;
  background: #fff !important; color: #712438 !important;
  border-radius: 8px !important;
  padding: 8px 10px !important;
  font-size: 16px !important;
  box-shadow: 0 2px 8px rgba(57,46,51,.08) !important;
}
@media (max-width: 767px) {
  html.route-common-home body .grid-row-bottom-4 { padding-top: 30px !important; padding-bottom: 28px !important; }
  html body .module-title-162 .luno-journal-heading p { display: none !important; }
  html body .module-blog_posts-40 .post-thumb .button-group { padding-left: 18px !important; padding-right: 18px !important; }
}
/* Customer stories: restrained quote cards, retaining the original feedback. */
html.route-common-home body #bottom .grid-row-bottom-5 {
  padding-top: 44px !important;
  padding-bottom: 44px !important;
}
/* The review column adds 20px above; match that below before the dark footer shelf. */
html.route-common-home body footer > .grid-rows { margin-top: 20px !important; }
html body .module-title-281 .title-wrapper::before,
html body .module-title-281 .title-wrapper::after { content: none !important; }
html body .module-title-281 .luno-customer-heading { margin-bottom: 22px !important; }
html body .module-title-281 .luno-customer-heading h2 { text-wrap: balance; }
html body .module-title-281 .luno-customer-heading p {
  margin: 14px auto 0 !important;
  padding: 0 12px !important;
  font: 400 14px/1.7 Montserrat, sans-serif !important;
  color: #75656d !important;
}
html body .module-testimonials-256 .swiper-wrapper { align-items: stretch !important; }
html body .module-testimonials-256 .module-item { height: auto !important; }
html body .module-testimonials-256 .block-body {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  height: 100% !important;
  min-height: 230px !important;
  padding: 26px 24px !important;
  background: #fcf9fa !important;
  border: 1px solid #eee3e7 !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  text-align: center !important;
}
html body .module-testimonials-256 .block-header {
  margin: 0 0 14px !important;
  padding: 0 !important;
}
html body .module-testimonials-256 .icon-block,
html body .module-testimonials-256 .icon-block::before {
  font-size: 32px !important;
  line-height: 36px !important;
  color: #712438 !important;
}
html body .module-testimonials-256 .block-content {
  flex: 1 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  font: 400 14px/1.8 Montserrat, sans-serif !important;
  color: #51444b !important;
  text-align: center !important;
}
html body .module-testimonials-256 .block-footer {
  margin: 18px 0 0 !important;
  padding: 0 !important;
  font: 600 13px/1.5 Montserrat, sans-serif !important;
  color: #712438 !important;
  text-align: center !important;
}
html body .module-testimonials-256 .swiper-pagination { margin-top: 22px !important; }
html body .module-testimonials-256 .luno-ebay-positive {
  margin-top: 8px;
  font: 500 10px/1.5 Montserrat, sans-serif;
  color: #41664c;
  background: #edf4ef;
  border-radius: 6px;
  padding: 4px 8px;
  text-align: center;
}
html body .module-testimonials-256 .block-footer { overflow-wrap: anywhere; }
html body .module-testimonials-256 .block-content { display: flex; flex-direction: column; width: 100%; }
html body .module-testimonials-256 .luno-ebay-review-text { margin-bottom: 16px; }
html body .module-testimonials-256 .luno-ebay-reviewed-product {
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid #eee3e7;
  font: 400 11px/1.6 Montserrat, sans-serif;
  color: #74656d;
  overflow-wrap: anywhere;
}
html body .module-testimonials-256 .luno-ebay-reviewed-product > span { display: block; font-size: 10px; font-weight: 600; color: #712438; margin-bottom: 4px; }
html body .luno-ebay-seller-badge {
  display: flex; align-items: center; justify-content: center; flex-wrap: wrap;
  width: fit-content; max-width: 100%; margin: 18px auto 0; gap: 12px 22px;
  padding: 12px 20px; border: 1px solid #eee1e6; border-radius: 12px; background: #fcf9fa;
  text-decoration: none !important; cursor: pointer;
}
html body .luno-ebay-seller-identity { display: flex; align-items: center; gap: 8px; font: 500 15px/1.5 Montserrat,sans-serif; color: #41363b; }
html body .luno-ebay-username { color: #712438; font-weight: 600; text-decoration: none !important; }
html body .luno-ebay-score { white-space: nowrap; }
html body .luno-ebay-star { color: #40b7c5; font-size: 22px; line-height: 1; vertical-align: -1px; }
html body .luno-ebay-positive-stat { font: 400 12px/1.5 Montserrat,sans-serif; color: #51444b; }
html body .luno-ebay-positive-stat strong { color: #315e40; font-size: 16px; font-weight: 700; }
html body .luno-ebay-positive-stat > span { display: block; color: #82747b; font-size: 10px; }
@media (max-width: 767px) {
  html body .luno-ebay-seller-badge { flex-direction: column; padding: 12px 16px; gap: 8px; }
  html body .luno-ebay-seller-identity { font-size: 13px; }
}
@media (max-width: 767px) {
  html.route-common-home body #bottom .grid-row-bottom-5 { padding-top: 30px !important; padding-bottom: 30px !important; }
  html body .module-title-281 .luno-customer-heading p { font-size: 12px !important; }
  html body .module-testimonials-256 .block-body { min-height: 210px !important; padding: 24px 22px !important; }
}
/* Footer navigation: lighter typography and a distinct newsletter panel. */
html body footer > .grid-rows > .grid-row-3 {
  background: #fff !important;
  padding-top: 36px !important;
  padding-bottom: 36px !important;
}
html body footer .grid-row-3 > .grid-cols > .grid-col { border: 0 !important; }
@media (min-width: 768px) {
  html body footer .grid-row-3 > .grid-cols > .grid-col { padding-bottom: 0 !important; }
  html body footer .grid-row-3 .links-menu .links-menu-item:last-child { margin-bottom: 0 !important; }
}
html body footer .grid-row-3 .links-menu .module-title {
  color: #712438 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  margin-bottom: 16px !important;
}
html body footer .grid-row-3 .links-menu .links-menu-item { margin: 0 0 7px !important; }
html body footer .grid-row-3 .links-menu .links-menu-item > a {
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: #665960 !important;
  padding: 2px 0 !important;
  transition: color .18s ease;
}
html body footer .grid-row-3 .links-menu .links-menu-item > a:hover { color: #712438 !important; text-decoration: underline; text-underline-offset: 3px; }
html body footer .grid-row-3 a:focus-visible,
html body footer .module-newsletter-67 button:focus-visible { outline: 2px solid #712438; outline-offset: 3px; }
html body footer .module-newsletter-67 {
  background: #faf5f7 !important;
  border: 1px solid #eee1e6 !important;
  border-radius: 14px !important;
  padding: 20px !important;
}
html body footer .module-newsletter-67 .module-title { color: #712438 !important; font-size: 18px !important; font-weight: 600 !important; margin-bottom: 10px !important; }
html body footer .module-newsletter-67 .module-title::after { display: none !important; }
html body footer .module-newsletter-67 .newsletter-text { color: #665960 !important; font-size: 14px !important; font-weight: 500 !important; line-height: 1.6 !important; margin-bottom: 14px !important; }
html body footer .module-newsletter-67 .input-group { background: #fff !important; border: 1px solid #d9c9d0 !important; border-radius: 10px !important; padding: 5px !important; box-shadow: none !important; }
html body footer .module-newsletter-67 .newsletter-email { font-size: 14px !important; font-weight: 400 !important; padding-left: 10px !important; min-width: 0; color: #41363b !important; }
html body footer .module-newsletter-67 .input-group:focus-within { border-color: #712438 !important; box-shadow: 0 0 0 2px #71243815 !important; }
html body footer .module-newsletter-67 .input-group .input-group-btn button.btn.btn-primary { border-radius: 10px !important; padding: 10px 16px !important; font-size: 12px !important; line-height: 18px !important; }
html body footer .module-newsletter-67 .input-group { display: flex !important; align-items: center !important; width: 100% !important; height: 48px !important; gap: 4px; }
html body footer .module-newsletter-67 .newsletter-form,
html body footer .module-newsletter-67 form { width: 100% !important; }
html body footer .module-newsletter-67 .newsletter-email { flex: 1 1 0 !important; width: 0 !important; height: 36px !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
html body footer .module-newsletter-67 .input-group-btn { position: static !important; display: flex !important; flex: 0 0 auto !important; width: auto !important; height: 36px !important; }
html body footer .module-newsletter-67 .input-group-btn .btn { position: static !important; transform: none !important; height: 36px !important; min-height: 36px !important; padding-top: 8px !important; padding-bottom: 8px !important; margin: 0 !important; }
html body footer .module-newsletter-67 .luno-newsletter-consent { margin-top: 12px !important; color: #82747b !important; }
html body footer > .grid-rows > .grid-row-4 { background: #211c1f !important; padding-top: 18px !important; padding-bottom: 18px !important; }
html body footer .links-menu-77 .links-text { font-size: 11px !important; font-weight: 400 !important; line-height: 1.7 !important; color: #d7cdd2 !important; }
@media (min-width: 768px) {
  html body footer .grid-row-3 .links-menu .module-title::after { display: none !important; }
}
@media (max-width: 767px) {
  html body footer > .grid-rows > .grid-row-3 { padding-top: 20px !important; padding-bottom: 24px !important; }
  html body footer .grid-row-3 .links-menu .module-title { margin: 0 !important; padding: 15px 0 !important; border-bottom: 1px solid #eee3e7 !important; }
  html body footer .grid-row-3 .links-menu .module-body { padding-top: 12px !important; }
  html body footer .module-newsletter-67 { margin-top: 16px !important; padding: 16px !important; }
  html body footer .module-newsletter-67 .input-group-btn .btn { padding-left: 10px !important; padding-right: 10px !important; }
}
/* Red sale pricing is reserved for products that actually show the discount badge. */
html body .product-thumb:not(:has(.product-label-28)) .price-new,
html body .side-product:not(:has(.product-label-28)) .price-new,
html body .product-info:not(:has(.product-label-28)) .product-price-new {
  color: #0d0e1b !important;
}
html body .product-thumb:not(:has(.product-label-28)) .price-old,
html body .side-product:not(:has(.product-label-28)) .price-old,
html body .product-info:not(:has(.product-label-28)) .product-price-old {
  display: none !important;
}
html body .module-blog_posts-40 .post-thumb .caption > .name,
html body .module-blog_posts-40 .post-thumb .caption > .description {
  margin-left: 24px !important;
  margin-right: 24px !important;
  width: auto !important;
  max-width: calc(100% - 48px) !important;
  box-sizing: border-box !important;
}
@media (max-width: 767px) {
  html body .module-blog_posts-40 .post-thumb .caption > .name,
  html body .module-blog_posts-40 .post-thumb .caption > .description {
    margin-left: 18px !important;
    margin-right: 18px !important;
    max-width: calc(100% - 36px) !important;
  }
}
/* Preserve the original eBay section dimensions in its new homepage position. */
html.route-common-home body #top .grid-row-top-4 { padding-top: 24px !important; padding-bottom: 44px !important; }
html.route-common-home body #top .grid-row-top-6 { order: 5 !important; }
html body .luno-site-reviews { max-width: 1280px; margin: 0 auto; font-family: Montserrat, sans-serif; }
html body .luno-site-reviews-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
html body .luno-site-review { display: flex; flex-direction: column; text-align: center; padding: 26px 24px; background: #fcf9fa; border: 1px solid #eee3e7; border-radius: 16px; box-sizing: border-box; }
html body .luno-site-review:only-child { grid-column: 2; }
html body .luno-site-review-stars { color: #712438; font-size: 22px; letter-spacing: 3px; }
html body .luno-site-review-text { color: #51444b; font-size: 14px; line-height: 1.8; margin: 20px 0; white-space: pre-line; overflow-wrap: anywhere; }
html body .luno-site-review-product { margin-top: auto; padding-top: 14px; border-top: 1px solid #eee3e7; font-size: 11px; line-height: 1.6; }
html body .luno-site-review-product span { display: block; color: #712438; font-weight: 600; margin-bottom: 5px; }
html body .luno-site-review-product a { color: #74656d; text-decoration: none; }
html body .luno-site-review-product a:hover { color: #712438; text-decoration: underline; }
html body .luno-site-review-author { color: #712438; font-size: 13px; font-weight: 600; margin-top: 18px; overflow-wrap: anywhere; }
html body .luno-site-review-source { font-size: 10px; color: #74656d; margin-top: 8px; }
html body .luno-site-preview-note { font-size: 12px; color: #75656d; }
/* Redesigned discovery shelf: editorial header and roomy horizontal cards. */
html body div.grid-row:has(.module-side_products.module-side_products-39) {
  background: #59424d !important; border-color: #66505a !important;
  padding-top: 30px !important; padding-bottom: 30px !important;
}
html body .module-side_products-39 { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 22px; }
html body .module-side_products-39 > .luno-explore-heading { text-align: left; margin: 0 !important; }
html body .module-side_products-39 .luno-budget-eyebrow { display: block; color: #e4cbd5; font-size: 10px; letter-spacing: 1.6px; margin-bottom: 7px; }
html body .module-side_products-39 .luno-explore-heading h2 { color: #fff8fb !important; font-size: 28px !important; }
html body .module-side_products-39 .luno-explore-heading h2 span { color: #e9bccd !important; }
html body .module-side_products-39 > .module-body { display: contents; }
html body .module-side_products-39 .nav-tabs { grid-column: 2; grid-row: 1; margin: 0 !important; border: 1px solid #9b7d8b !important; background: #654d58 !important; border-radius: 10px !important; padding: 3px !important; }
html body .module-side_products-39 .nav-tabs > li > a { color: #f1e4e9 !important; font-size: 12px !important; border-radius: 7px !important; padding: 8px 15px !important; }
html body .module-side_products-39 .nav-tabs > li > a { color: #e9bccd !important; }
html body .module-side_products-39 .nav-tabs > li.active > a,
html body .module-side_products-39 .nav-tabs > li.active > a:hover,
html body .module-side_products-39 .nav-tabs > li.active > a:focus { background: #e9bccd !important; color: #592b3b !important; }
html body .module-side_products-39 .nav-tabs > li:not(.active) > a:hover { color: #592b3b !important; background: #e9bccd !important; }
html body .module-side_products-39 .nav-tabs a:focus-visible { outline-color: #fff !important; }
html body .module-side_products-39 > .module-body > .tab-content { grid-column: 1 / -1; min-width: 0; }
html body .module-side_products-39 .side-product { display: flex !important; flex-direction: row !important; gap: 14px; padding: 14px !important; border: 1px solid #e8dbe1 !important; border-radius: 12px !important; background: #fdfbfc !important; }
html body .module-side_products-39 .image { flex: 0 0 88px !important; width: 88px !important; height: 122px !important; margin: 0 !important; background: #fff; border-radius: 8px; overflow: hidden; }
html body .module-side_products-39 .product-img,
html body .module-side_products-39 .image img { width: 100% !important; height: 122px !important; object-fit: contain !important; }
html body .module-side_products-39 .caption { padding: 2px 0 !important; text-align: center !important; }
html body .module-side_products-39 .name { text-align: center !important; }
html body .module-side_products-39 .price { text-align: center !important; align-items: center !important; justify-content: center !important; width: 100% !important; }
html body .module-side_products-39 .name { height: 54px !important; margin-bottom: 8px !important; }
html body .module-side_products-39 .name a { -webkit-line-clamp: 3; font-size: 12px !important; line-height: 18px !important; }
html body .module-side_products-39 .price { font-size: 15px !important; margin-bottom: 8px !important; }
html body .module-side_products-39 .button-group { justify-content: center !important; gap: 16px; margin: 0 !important; padding: 0 !important; width: 100% !important; }
html body .module-side_products-39 .button-group > a { min-width: 30px; min-height: 30px; }
@media (max-width: 767px) {
  html body div.grid-row:has(.module-side_products.module-side_products-39) { padding-top: 24px !important; padding-bottom: 24px !important; }
  html body .module-side_products-39 { grid-template-columns: minmax(0,1fr); gap: 18px; }
  html body .module-side_products-39 > .luno-explore-heading { text-align: center; }
  html body .module-side_products-39 .luno-budget-eyebrow { font-size: 9px; letter-spacing: 1px; }
  html body .module-side_products-39 .luno-explore-heading h2 { font-size: 24px !important; }
  html body .module-side_products-39 .nav-tabs { grid-column: 1; grid-row: auto; margin: 0 auto !important; }
  html body .module-side_products-39 .nav-tabs > li > a { padding-left: 12px !important; padding-right: 12px !important; }
  html body .module-side_products-39 .side-product { flex-direction: column !important; gap: 10px; padding: 12px !important; }
  html body .module-side_products-39 .image { flex: 0 0 auto !important; width: 100% !important; height: 100px !important; }
  html body .module-side_products-39 .product-img,
  html body .module-side_products-39 .image img { height: 100px !important; }
  html body .module-side_products-39 .name { height: 36px !important; }
  html body .module-side_products-39 .name a { -webkit-line-clamp: 2; }
  html body .module-side_products-39 .caption { width: 100%; text-align: center !important; }
  html body .module-side_products-39 .name,
  html body .module-side_products-39 .price { text-align: center !important; justify-content: center !important; }
  html body .module-side_products-39 .price { align-items: center !important; width: 100% !important; }
  html body .module-side_products-39 .button-group { justify-content: center !important; gap: 24px !important; margin: 0 !important; padding: 0 !important; width: 100% !important; }
}
html body .luno-site-reviews-empty { max-width: 680px; margin: 0 auto; padding: 26px 24px; text-align: center; background: #fcf9fa; border: 1px solid #eee3e7; border-radius: 16px; }
html body .luno-site-reviews-empty p { margin: 0 0 10px; color: #712438; font: 500 17px/1.6 Montserrat, sans-serif; }
html body .luno-site-reviews-empty span { color: #75656d; font: 400 12px/1.7 Montserrat, sans-serif; }
@media(max-width: 767px) {
  html.route-common-home body #top .grid-row-top-2 { padding-bottom: 10px !important; }
  html.route-common-home body #top .grid-row-top-4 { padding-top: 10px !important; padding-bottom: 30px !important; }
  html body .luno-site-reviews-grid { grid-template-columns: minmax(0,1fr); gap: 16px; }
  html body .luno-site-review:only-child { grid-column: auto; }
  html body .luno-site-review { padding: 22px 20px; }
}
/* Registration opt-in: visible native tick, including the iframe popup. */
html body #account-register .register-form .luno-register-optin input[type=checkbox],
html.popup-register body form.register-form .luno-register-optin input[type=checkbox] {
  appearance:auto !important; -webkit-appearance:checkbox !important;
  display:block !important; opacity:1 !important; visibility:visible !important;
  pointer-events:auto !important; transform:none !important; cursor:pointer;
  border:0 !important; box-shadow:none !important; background:initial !important;
}
html body #account-register .register-form .luno-register-optin input::after,
html body #account-register .register-form .luno-register-optin input::before,
html.popup-register body form.register-form .luno-register-optin input::after,
html.popup-register body form.register-form .luno-register-optin input::before { content:none !important; display:none !important; }
html.popup-register body form.register-form .luno-register-optin > span { display:block; min-width:0; }
html.popup-register body form.register-form .luno-register-optin input:focus-visible { outline:2px solid #b67a8d; outline-offset:3px; }
/* Welcome offer: a focused form, with a single-column mobile layout. */
html body #account-register .register-form fieldset.luno-register-newsletter, html.popup-register body form.register-form fieldset.luno-register-newsletter { padding:18px 20px !important; margin:20px 0 16px !important; border:1px solid #eadde3 !important; border-radius:12px !important; background:#faf5f7 !important; }
html body #account-register .register-form .luno-register-newsletter legend, html.popup-register body form.register-form .luno-register-newsletter legend { display:none !important; }
html body #account-register .register-form .luno-register-optin, html.popup-register body form.register-form .luno-register-optin { display:flex !important; align-items:flex-start !important; gap:12px !important; width:100%; padding:0 !important; margin:0 !important; cursor:pointer; text-align:left; }
html body #account-register .register-form .luno-register-optin input[type=checkbox], html.popup-register body form.register-form .luno-register-optin input[type=checkbox] { position:static !important; flex:0 0 20px; width:20px !important; height:20px !important; margin:2px 0 0 !important; accent-color:#712438; }
html body #account-register .register-form .luno-register-optin strong, html.popup-register body form.register-form .luno-register-optin strong { display:block; font:600 13px/1.5 Montserrat,sans-serif !important; color:#593841 !important; }
html body #account-register .register-form .luno-register-optin small, html.popup-register body form.register-form .luno-register-optin small { display:block; margin-top:3px; font:400 11px/1.5 Montserrat,sans-serif !important; color:#92828a !important; }
html body #account-register .register-form .buttons .lunoria-register-consent-note, html.popup-register body form.register-form .buttons .lunoria-register-consent-note { font:400 12px/1.7 Montserrat,sans-serif !important; color:#897a82 !important; margin:0 !important; }
html body #account-register .register-form .buttons .lunoria-register-consent-note a,
html.popup-register body form.register-form .buttons .lunoria-register-consent-note a,
html body #account-register .register-form .buttons .lunoria-register-consent-note a b, html.popup-register body form.register-form .buttons .lunoria-register-consent-note a b { font:500 12px/1.7 Montserrat,sans-serif !important; color:#712438 !important; text-decoration:none !important; }
html body #account-register .register-form .buttons .lunoria-register-consent-note a:hover, html.popup-register body form.register-form .buttons .lunoria-register-consent-note a:hover { text-decoration:underline !important; }
html body .module-newsletter-113.module-newsletter.module .newsletter-form { display:flex !important; flex-direction:column !important; align-items:stretch !important; }
html body .module-newsletter-113.module-newsletter.module .luno-welcome-privacy { margin:12px 0 0 !important; font:400 10px/1.6 Montserrat,sans-serif !important; text-align:center; color:#8c7b84; }
html body .module-newsletter-113.module-newsletter.module .luno-welcome-privacy a { font:inherit !important; color:#712438; text-underline-offset:2px; }
html body .module-newsletter-113.module-newsletter.module .luno-welcome-dismiss { display:block !important; width:100%; margin:10px 0 0 !important; padding:12px !important; min-height:46px; border:1px solid #dfc8d2 !important; border-radius:10px !important; background:#f7edf2 !important; box-shadow:none !important; color:#712438 !important; font:600 12px/20px Montserrat,sans-serif !important; text-align:center; text-decoration:none !important; cursor:pointer; }
html body .module-newsletter-113.module-newsletter.module .luno-welcome-dismiss:hover { background:#eedce5 !important; }
.module-popup-110 .module-blocks-111 { display:none !important; }
.module-popup-110 .grid-row-1, .module-popup-110 .grid-cols { margin:0 !important; padding:0 !important; }
.module-popup-110 .grid-cols { display:flex !important; align-items:stretch !important; }
.module-popup-110 .grid-col-1 { width:38% !important; min-height:420px; background-position:center !important; background-size:cover !important; }
.module-popup-110 .grid-col-2 { width:62% !important; padding:36px 28px 24px !important; background:#fffdfd !important; }
.module-popup-110 .grid-items, .module-popup-110 .grid-item { padding:0 !important; margin:0 !important; }
.module-popup-110 .grid-col-2 .grid-items { gap:0 !important; }
.module-popup-110 .module-newsletter-113, .module-popup-110 .module-newsletter-113 .module-body { padding:0 !important; margin:0 !important; background:none !important; }
.luno-welcome-copy { text-align:center; }
.luno-welcome-eyebrow { display:block; color:#997782; font-size:10px; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:12px; }
.luno-welcome-copy h2 { font-size:29px !important; line-height:1.15 !important; font-weight:700 !important; color:#382c32 !important; margin:0 0 14px !important; }
.luno-welcome-copy h2 span { color:#712438; }
.luno-welcome-copy p { font-size:13px !important; line-height:1.65 !important; font-weight:400 !important; color:#796b72 !important; margin:0 0 22px !important; }
html body .module-newsletter-113.module-newsletter.module .newsletter-form, html body .module-newsletter-113.module-newsletter.module form { width:100% !important; margin:0 !important; }
html body .module-newsletter-113.module-newsletter.module .input-group { display:flex !important; flex-direction:column !important; width:100% !important; height:auto !important; gap:10px; }
html body .module-newsletter-113.module-newsletter.module .newsletter-email { width:100% !important; height:46px !important; min-height:46px !important; border:1px solid #dfd0d7 !important; border-radius:10px !important; background:#fff !important; padding:12px 14px !important; font-size:16px !important; color:#382c32 !important; box-shadow:none !important; }
html body .module-newsletter-113.module-newsletter.module .input-group-btn { display:block !important; width:100% !important; position:static !important; padding:0 !important; }
html body .module-newsletter-113.module-newsletter.module .input-group-btn .btn { display:flex !important; width:100% !important; height:46px !important; min-height:46px !important; position:static !important; transform:none !important; margin:0 !important; padding:12px !important; border:0 !important; border-radius:10px !important; background:#712438 !important; color:#fff !important; justify-content:center !important; align-items:center !important; font-size:13px !important; font-weight:600 !important; letter-spacing:0 !important; text-transform:none !important; }
html body .module-newsletter-113.module-newsletter.module .input-group-btn .btn::before, html body .module-newsletter-113.module-newsletter.module .input-group-btn .btn::after { display:none !important; }
html body .module-newsletter-113.module-newsletter.module .input-group-btn .btn span { display:inline !important; font-size:13px !important; }
html body .module-newsletter-113.module-newsletter.module .checkbox { display:block !important; height:auto !important; margin:14px 0 0 !important; padding:0 !important; }
html body .module-newsletter-113.module-newsletter.module .checkbox label { display:block !important; position:relative; padding:0 0 0 27px !important; text-align:left !important; font-size:11px !important; line-height:1.65 !important; font-weight:400 !important; color:#796b72 !important; }
html body .module-newsletter-113.module-newsletter.module .checkbox input { position:absolute !important; left:0 !important; top:1px !important; width:18px !important; height:18px !important; margin:0 !important; accent-color:#712438; }
html body .module-newsletter-113.module-newsletter.module .checkbox a { display:inline !important; font-size:inherit !important; line-height:inherit !important; color:#712438 !important; }
html body .module-newsletter-113.module-newsletter.module :is(input,button):focus-visible { outline:2px solid #b67a8d !important; outline-offset:3px; }
.popup-wrapper.module-popup-110 .popup-container { width:700px !important; max-width:calc(100vw - 32px) !important; border-radius:20px !important; background:#fffdfd !important; box-shadow:0 20px 70px #21121a40 !important; }
.popup-wrapper.module-popup-110 .popup-body { border-radius:20px !important; overflow:hidden !important; max-height:calc(100dvh - 48px) !important; }
.popup-wrapper.module-popup-110 .popup-inner-body { overflow:auto !important; padding:0 !important; max-height:calc(100dvh - 48px) !important; }
.popup-wrapper.module-popup-110 .popup-close { top:8px !important; right:8px !important; left:auto !important; width:36px !important; height:36px !important; min-width:36px !important; padding:0 !important; transform:none !important; border:0 !important; border-radius:50% !important; background:#f4e9ee !important; color:#712438 !important; display:flex !important; align-items:center !important; justify-content:center !important; z-index:5 !important; box-shadow:none !important; }
.popup-wrapper.module-popup-110 .popup-close::before, .popup-wrapper.module-popup-110 .popup-close::after { display:none !important; }
.popup-wrapper.module-popup-110 .popup-close span { font:28px/1 Arial,sans-serif !important; }
.popup-wrapper.module-popup-110 button.btn.popup-close { pointer-events:auto !important; }
.popup-wrapper.module-popup-110 .popup-footer { padding:12px 20px !important; margin:0 !important; background:#f7eff3 !important; border:0 !important; }
.popup-wrapper.module-popup-110 .popup-dont-show { display:flex !important; align-items:center !important; gap:8px; padding:0 !important; margin:0 !important; color:#8c7b84 !important; font-size:11px !important; line-height:18px !important; }
.popup-wrapper.module-popup-110 .popup-dont-show input { width:16px !important; height:16px !important; margin:0 !important; accent-color:#712438; }
html.module-popup-110 .luno-announcement { display:none !important; }
@media(max-width:767px) {
 .module-popup-110 .grid-col-1 { display:none !important; }
 .module-popup-110 .grid-col-2 { width:100% !important; padding:44px 24px 24px !important; }
 .popup-wrapper.module-popup-110 .popup-container { width:390px !important; }
 .luno-welcome-copy h2 { font-size:28px !important; }
 .popup-wrapper.module-popup-110 .popup-close { width:40px !important; height:40px !important; }
}
