/* =========================================================================
   RepaRose header
   One cream band, three zones, a service rail above it. The signature is
   the sprig: a three-leaf stem from the wreath in the logo, which draws
   itself under the active nav item and divides the mega panel.
   ========================================================================= */

.rr-header {
  --rr-rail-h: 36px;
  --rr-band-h: 86px;
  --rr-hair: rgba(201, 166, 107, .38);
  position: relative;
  z-index: 1001;
  background: var(--rr-cream);
  font-family: var(--tb-text-primary-font);
}

/* ---------- service rail -------------------------------------------------- */
.rr-rail {
  border-bottom: 1px solid var(--rr-hair);
  background: var(--rr-cream);
}
.rr-rail-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: var(--rr-rail-h);
}
.rr-rail-promise,
.rr-rail-links {
  display: flex;
  align-items: center;
  gap: 22px;
}
.rr-rail-promise .widget,
.rr-rail-promise aside { margin: 0; }
.rr-rail-promise .textwidget,
.rr-rail .rr-announce,
.rr-rail-link,
.rr-rail .nav-track a,
.rr-rail .menu-topbar a {
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--rr-muted);
}
.rr-rail-link:hover,
.rr-rail .nav-track a:hover { color: var(--rr-rose); }
.rr-rail .rr-announce i { color: var(--rr-sage); font-size: 14px; }

/* the rail's own hairline separators */
/* one shared height so the switcher, Track my order and Contact us share a
   centre line — the switcher is shorter than the text links on their own */
.rr-rail-links > * {
  display: flex;
  align-items: center;
  min-height: 26px;
}
.rr-rail-links > * + * {
  padding-inline-start: 22px;
  border-inline-start: 1px solid var(--rr-hair);
}
.rr-rail .nav-track ul,
.rr-rail .menu-topbar { display: flex; gap: 18px; margin: 0; padding: 0; list-style: none; }
.rr-rail .nav-track i { display: none; }

.rr-rail .reparose-lang-switcher,
.rr-rail .reparose-lang-switcher * { line-height: 1.2; }
.rr-rail .trp-shortcode-switcher__wrapper {
  --font-size: 11.5px !important;
  --text: #6F6A66 !important;
  --text-hover: #A4535B !important;
  --bg: #FFFDFB !important;
  --bg-hover: transparent !important;
  --border: 1px solid rgba(201, 166, 107, .38) !important;
  --border-color: rgba(201, 166, 107, .38) !important;
  --border-radius: 8px !important;
  --flag-size: 16px !important;
  --flag-radius: 2px !important;
}
/* TranslatePress renders this control twice: an in-flow .trp-shortcode-anchor
   (inert, and the layer that sizes the box) and an absolutely positioned
   .trp-shortcode-overlay that carries the interaction. Both layers have to be
   given identical geometry — styling only the anchor left the overlay 16px
   wider, so its chevron landed off the anchor's and its right edge crowded
   the next rail item. Every padding/height below is therefore applied to the
   two layers together, never to one. */
.rr-rail .trp-shortcode-anchor,
.rr-rail .trp-shortcode-overlay,
.rr-rail .trp-shortcode-anchor > .trp-current-language-item__wrapper,
.rr-rail .trp-shortcode-overlay > .trp-current-language-item__wrapper,
.rr-rail .trp-shortcode-anchor .trp-language-item,
.rr-rail .trp-shortcode-overlay .trp-language-item {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: 0 !important;
}
/* One line box for the *current language row* in both layers, so the closed
   control occupies the same rectangle either way. This must not be applied to
   the layers themselves: the overlay is a block that also holds the dropdown
   list as a column beneath this row, so forcing it to a 20px flex row laid
   the dropdown out sideways and its own overflow:hidden then clipped it. */
.rr-rail .trp-shortcode-anchor > .trp-current-language-item__wrapper,
.rr-rail .trp-shortcode-overlay > .trp-current-language-item__wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 3px !important;
  height: 20px !important;
  line-height: 20px !important;
}
/* the overlay is the interactive layer: keep its row over the anchor's, and
   let its width follow the dropdown rather than the closed control */
.rr-rail .trp-shortcode-overlay {
  inset-inline-start: 0 !important;
  inset-inline-end: auto !important;
  top: 0 !important;
}

/* ---------- the open dropdown --------------------------------------------
   A panel below the control, on the site's own surface. The plugin keeps the
   list clipped at max-height 0 and adds .is-open on hover, so the surface is
   described on the open state only — that way the closed control takes up no
   room and needs no counter-rule. */
.rr-rail .trp-ls-dropdown.is-open .trp-switcher-dropdown-list,
.rr-rail .trp-ls-dropdown[aria-expanded="true"] .trp-switcher-dropdown-list,
.rr-rail .trp-shortcode-switcher.is-open .trp-switcher-dropdown-list,
.rr-rail .trp-shortcode-switcher[aria-expanded="true"] .trp-switcher-dropdown-list {
  /* no min-width: the panel is a child of the shrink-to-fit overlay, so any
     extra width widens the closed control too and crowds the next rail item */
  margin-top: 8px !important;
  padding: 4px !important;
  border: 1px solid var(--rr-hair) !important;
  border-radius: 8px !important;
  background: var(--rr-shell) !important;
  box-shadow: 0 12px 30px rgba(28, 22, 18, .14) !important;
}
.rr-rail .trp-switcher-dropdown-list .trp-language-item {
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  gap: 7px;
  height: 28px !important;
  padding: 0 6px !important;
  border-radius: 5px;
  white-space: nowrap;
}
.rr-rail .trp-switcher-dropdown-list .trp-language-item:hover { background: var(--rr-cream) !important; }
.rr-rail .trp-language-item,
.rr-rail .trp-language-item-name { color: var(--rr-muted) !important; }
.rr-rail .trp-language-item-name {
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
}
/* the plugin ellipsises the label; at our type size that clips EN to "E." */
.rr-rail .trp-language-item-name {
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: max-content !important;
}
.rr-rail .trp-shortcode-anchor .trp-shortcode-arrow,
.rr-rail .trp-shortcode-overlay .trp-shortcode-arrow {
  width: 13px !important;
  height: 13px !important;
  flex: 0 0 13px !important;
  margin: 0 !important;
  align-self: center !important;
}
.rr-rail .trp-shortcode-arrow path { stroke: var(--rr-muted) !important; }
.rr-rail .trp-language-item:hover,
.rr-rail .trp-language-item:hover .trp-language-item-name { color: var(--rr-rose) !important; }
.rr-rail .trp-current-language-item__wrapper { gap: 3px; }
/* Strip the plugin's pill chrome off the control. .trp-switcher-dropdown-list
   is also a direct child div here, so this flattens the closed dropdown too —
   which is what we want; the open-state rules below carry one class more and
   so win when it opens. */
.rr-rail .trp-language-switcher,
.rr-rail .trp-language-switcher > div {
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  min-width: 0 !important;
  width: auto !important;
}
/* the flag: a 16px chip with a hairline so white bands read against cream */
.rr-rail .trp-flag-image,
.rr-rail .trp-language-switcher img {
  display: inline-block !important;
  width: 16px !important;
  height: 12px !important;
  object-fit: cover;
  border-radius: 2px;
  box-shadow: 0 0 0 1px rgba(58, 53, 49, .16);
  flex: 0 0 auto;
  margin: 0 !important;
  vertical-align: middle;
}
.rr-rail .trp-language-item,
.rr-rail .trp-language-switcher a,
.rr-rail .trp-current-language-item__wrapper {
  display: flex !important;
  align-items: center;
  gap: 7px;
}
.rr-rail .trp-language-switcher a,
.rr-rail .trp-language-switcher > div > a {
  padding: 0 !important;
  font-size: 11.5px !important;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--rr-muted) !important;
  background: transparent !important;
}
.rr-rail .trp-language-switcher a:hover { color: var(--rr-rose) !important; }
/* the dropdown list still needs a surface */
.rr-rail .trp-language-switcher .trp-ls-shortcode-language,
.rr-rail .trp-ls-shortcode-disabled-language {
  background: var(--rr-shell) !important;
  border: 1px solid var(--rr-hair) !important;
  border-radius: 8px;
  padding: 6px 10px !important;
}
.rr-rail .trp-language-switcher .trp-ls-shortcode-current-language { z-index: 2; }

/* track-order menu renders through the theme walker */
.rr-rail #track-order,
.rr-rail .menu-track-order,
.rr-rail ul.menu {
  display: flex;
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.rr-rail #track-order a,
.rr-rail ul.menu a,
.rr-rail .menu-item > a {
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: var(--rr-muted) !important;
  padding: 0 !important;
}
.rr-rail #track-order a::before,
.rr-rail #track-order a::after,
.rr-rail ul.menu a::before,
.rr-rail ul.menu a::after { content: none !important; display: none !important; }
.rr-rail #track-order a:hover,
.rr-rail ul.menu a:hover { color: var(--rr-rose) !important; }
.rr-rail #track-order i,
.rr-rail ul.menu i,
.rr-rail .caret { display: none !important; }
.rr-rail .rr-rail-link { font-weight: 600; }

/* ---------- band ---------------------------------------------------------- */
.rr-band { background: var(--rr-cream); border-bottom: 1px solid var(--rr-hair); }
.rr-band-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  min-height: var(--rr-band-h);
  transition: min-height .28s ease;
}

.rr-brand { flex: 0 0 auto; }
.rr-brand .logo { margin: 0; line-height: 0; }
.rr-brand img {
  width: auto;
  height: 46px;
  transition: height .28s ease;
}

/* ---------- navigation ---------------------------------------------------- */
.rr-nav { flex: 1 1 auto; display: flex; justify-content: center; }
.rr-nav-list {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.rr-nav-item { position: static; }
.rr-nav-link {
  position: relative;
  display: block;
  padding: 10px 14px 14px;
  font-family: var(--rr-serif);
  font-size: 17.5px;
  font-weight: 600;
  letter-spacing: .015em;
  line-height: 1;
  color: var(--rr-ink);
  white-space: nowrap;
}
.rr-nav-link:hover,
.rr-nav-link:focus-visible,
.rr-nav-item.is-current > .rr-nav-link { color: var(--rr-rose); }

/* the sprig */
.rr-sprig {
  position: absolute;
  inset-inline-start: 50%;
  bottom: 2px;
  width: 62px;
  height: 15px;
  transform: translateX(-50%);
  overflow: visible;
  pointer-events: none;
}
[dir="rtl"] .rr-sprig { transform: translateX(50%) scaleX(-1); }
.rr-sprig-stem {
  stroke: var(--rr-sage);
  stroke-width: 1.1;
  stroke-linecap: round;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  transition: stroke-dashoffset .38s cubic-bezier(.33, .8, .3, 1);
}
.rr-sprig-leaf {
  fill: var(--rr-sage);
  transform: scale(0);
  transform-box: fill-box;
  transform-origin: 0% 100%;
  transition: transform .3s cubic-bezier(.2, .9, .3, 1.2);
}
.rr-leaf-1 { transition-delay: .12s; }
.rr-leaf-2 { transition-delay: .19s; }
.rr-leaf-3 { transition-delay: .26s; }

.rr-nav-link:hover .rr-sprig-stem,
.rr-nav-link:focus-visible .rr-sprig-stem,
.rr-nav-item.has-panel.is-open > .rr-nav-link .rr-sprig-stem,
.rr-nav-item.is-current > .rr-nav-link .rr-sprig-stem { stroke-dashoffset: 0; }
.rr-nav-link:hover .rr-sprig-leaf,
.rr-nav-link:focus-visible .rr-sprig-leaf,
.rr-nav-item.has-panel.is-open > .rr-nav-link .rr-sprig-leaf,
.rr-nav-item.is-current > .rr-nav-link .rr-sprig-leaf { transform: scale(1); }

/* ---------- mega panel --------------------------------------------------- */
.rr-panel {
  position: absolute;
  inset-inline: 0;
  top: 100%;
  z-index: 40;
  padding: 0;
  background: var(--rr-shell);
  border-bottom: 1px solid var(--rr-hair);
  box-shadow: 0 24px 44px -28px rgba(43, 43, 43, .28);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: opacity .22s ease, transform .22s ease, visibility 0s linear .22s;
}
.rr-nav-item.has-panel:hover > .rr-panel,
.rr-nav-item.has-panel:focus-within > .rr-panel,
.rr-nav-item.has-panel.is-open > .rr-panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity .22s ease, transform .22s ease, visibility 0s linear 0s;
}
.rr-panel-inner {
  display: grid;
  grid-template-columns: minmax(190px, 230px) minmax(230px, 290px) 1fr;
  align-items: start;
  gap: 0 56px;
  width: min(1200px, 100% - 60px);
  margin: 0 auto;
  padding: 36px 0 40px;
}

.rr-panel-links { margin: 0; padding: 0; list-style: none; }
.rr-panel-item { margin-bottom: 13px; }
.rr-panel-item:last-child { margin-bottom: 0; }
.rr-panel-item > a {
  font-family: var(--rr-serif);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--rr-ink);
}
.rr-panel-item > a:hover,
.rr-panel-item.is-current > a { color: var(--rr-rose); }
.rr-subsub { margin: 8px 0 0; padding: 0; list-style: none; }
.rr-subsub a { font-size: 14px; color: var(--rr-muted); }

.rr-panel-about {
  padding-inline-start: 56px;
  border-inline-start: 1px solid var(--rr-hair);
}
.rr-panel-note {
  margin: 0 0 20px;
  font-size: 13.5px;
  line-height: 1.75;
  color: var(--rr-muted);
}
.rr-panel-note p { margin: 0; }

.rr-panel-eyebrow {
  margin: 0 0 14px;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--rr-sage);
}

.rr-panel-all {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--rr-sage);
}
.rr-sprig-inline {
  position: static;
  inset-inline-start: auto;
  bottom: auto;
  width: 46px;
  height: 14px;
  transform: none;
  flex: 0 0 auto;
}
[dir="rtl"] .rr-sprig-inline { transform: scaleX(-1); }
.rr-panel-all .rr-sprig-inline .rr-sprig-stem { stroke-dashoffset: 0; }
.rr-panel-all .rr-sprig-inline .rr-sprig-leaf { transform: scale(1); }
.rr-panel-all:hover { color: var(--rr-rose); }
.rr-panel-all:hover .rr-sprig-inline .rr-sprig-stem { stroke: var(--rr-rose); }
.rr-panel-all:hover .rr-sprig-inline .rr-sprig-leaf { fill: var(--rr-rose); }

.rr-panel-aside {
  padding-inline-start: 56px;
  border-inline-start: 1px solid var(--rr-hair);
}
.rr-panel-picks { display: flex; gap: 22px; }
.rr-pick { display: block; width: 158px; }
.rr-pick-frame {
  display: block;
  overflow: hidden;
  border-radius: 10px;
  background: #fff;
  border: 1px solid var(--rr-line);
}
.rr-pick-img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  transition: transform .5s ease;
}
.rr-pick:hover .rr-pick-img { transform: scale(1.05); }
.rr-pick-name {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 11px 0 3px;
  font-size: 13px;
  line-height: 1.45;
  color: var(--rr-ink);
}
.rr-pick:hover .rr-pick-name { color: var(--rr-rose); }
.rr-pick-price { display: block; font-size: 13px; font-weight: 600; color: var(--rr-rose); }
.rr-pick-price del { display: none; }

/* ---------- actions ------------------------------------------------------ */
.rr-actions { flex: 0 0 auto; display: flex; align-items: center; gap: 6px; }
.rr-action { position: relative; }
/* Only the four triggers get the icon-button treatment. This used to read
   `.rr-action a`, which also matched every link inside the panels these
   triggers open — font-size:0 turned the account dropdown into three blank
   rows and would silently blank any future dropdown text. */
.rr-action-search .btn-search-icon,
.rr-action-account .tbay-login > a,
.rr-action-wishlist .top-wishlist > a,
.rr-action-cart .dropdown-toggle.mini-cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 42px;
  height: 42px;
  padding: 0 8px;
  border: 0;
  background: transparent;
  color: var(--rr-ink);
  font-size: 0;              /* labels are decorative here; icons carry meaning */
}
.rr-action-search .btn-search-icon > i,
.rr-action-account .tbay-login > a i,
.rr-action-wishlist .top-wishlist > a i,
.rr-action-cart .dropdown-toggle.mini-cart i { font-size: 19px; line-height: 1; }
.rr-action-search .btn-search-icon:hover,
.rr-action-account .tbay-login > a:hover,
.rr-action-wishlist .top-wishlist > a:hover,
.rr-action-cart .dropdown-toggle.mini-cart:hover { color: var(--rr-rose); }
.rr-action-cart .top-cart,
.rr-action-wishlist .top-wishlist { margin: 0; }

/* counters */
.rr-actions .count_wishlist,
.rr-actions .cart-number,
.rr-actions .mini-cart-number,
.rr-actions .count {
  position: absolute;
  top: 2px;
  inset-inline-end: 0;
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  border-radius: 20px;
  background: var(--rr-rose);
  color: #fff;
  font-family: var(--tb-text-primary-font);
  font-size: 10px;
  font-weight: 600;
  line-height: 17px;
  text-align: center;
}

/* keep the parent theme's search canvas + cart dropdown usable */
.rr-header .sidebar-canvas-search { font-size: 15px; }
.rr-header .tbay-search-form .btn-search-close { font-size: 13px; }
.rr-action-cart .cart-popup,
.rr-action-cart .dropdown-menu { inset-inline-end: 0; inset-inline-start: auto; }

/* Mini cart popup.
   The theme's own popup styling is scoped to `#tbay-header .top-cart …`, an
   ancestry this custom header does not render, so the panel came out 160px
   wide with the product name and controls spilling out of it. Bootstrap still
   handles open/closed (`.dropdown-toggle` toggles `.open`), so only the
   surface needs describing. */
.rr-action-cart .cart-popup { position: static; }
.rr-action-cart .dropdown-menu {
  inset-inline-end: 0;
  inset-inline-start: auto;
  top: calc(100% + 14px);
  width: 344px;
  max-width: calc(100vw - 32px);
  padding: 0 20px 18px;
  border: 1px solid var(--rr-hair);
  border-radius: 4px;
  background: #FFFDFB;
  box-shadow: 0 22px 54px rgba(28, 22, 18, .16);
  font-size: 14px;
}
.rr-action-cart .widget-header-cart {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 0 12px;
  border-bottom: 1px solid var(--rr-hair);
}
.rr-action-cart .widget-header-cart .widget-title {
  margin: 0;
  font-family: var(--rr-serif);
  font-size: 19px;
  font-weight: 600;
  white-space: nowrap;
}
.rr-action-cart .offcanvas-close { font-size: 12px; color: var(--rr-muted); }
.rr-action-cart .offcanvas-close:hover { color: var(--rr-rose); }

/* the item list */
.rr-action-cart .cart_list {
  margin: 0;
  padding: 0;
  list-style: none;
  max-height: 46vh;
  overflow-y: auto;
}
.rr-action-cart .cart_list > li {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 24px 14px 0;
  border-bottom: 1px solid var(--rr-hair);
}
[dir="rtl"] .rr-action-cart .cart_list > li,
body.rtl .rr-action-cart .cart_list > li { padding: 14px 0 14px 24px; }
.rr-action-cart .cart_list > li:last-child { border-bottom: 0; }
.rr-action-cart .product-image { flex: 0 0 64px; }
.rr-action-cart .product-image img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: 3px;
  background: #F6F1EA;
}
.rr-action-cart .product-details {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rr-action-cart .product-details .product-name {
  display: block;
  font-size: 13.5px;
  line-height: 1.45;
  color: var(--rr-ink);
}
.rr-action-cart .product-details .product-name:hover { color: var(--rr-rose); }
.rr-action-cart .group-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.rr-action-cart .group-content .amount { font-weight: 600; color: var(--rr-rose); }
.rr-action-cart .quantity .box {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--rr-hair);
  border-radius: 3px;
  overflow: hidden;
}
.rr-action-cart .quantity button {
  width: 26px;
  height: 26px;
  border: 0;
  background: transparent;
  color: var(--rr-muted);
  font-size: 9px;
  line-height: 1;
  cursor: pointer;
}
.rr-action-cart .quantity button:hover { color: var(--rr-rose); }
.rr-action-cart .quantity input.qty {
  width: 34px;
  height: 26px;
  padding: 0;
  border: 0;
  border-inline: 1px solid var(--rr-hair);
  background: transparent;
  text-align: center;
  font-size: 13px;
  -moz-appearance: textfield;
}
.rr-action-cart .quantity input.qty::-webkit-outer-spin-button,
.rr-action-cart .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
/* the remove control is a child of .product-details, so it would stack under
   the price; the conventional place for it is the row's top corner */
.rr-action-cart .cart_list .remove {
  position: absolute;
  top: 14px;
  inset-inline-end: 0;
  color: var(--rr-muted);
  font-size: 13px;
  line-height: 1;
  padding: 2px;
}
.rr-action-cart .cart_list .remove:hover { color: var(--rr-rose); }

/* subtotal and buttons */
.rr-action-cart .group-button { padding-top: 14px; border-top: 1px solid var(--rr-hair); }
.rr-action-cart .group-button .total {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 12px;
  font-size: 14px;
}
.rr-action-cart .group-button .total .amount { font-size: 17px; font-weight: 600; color: var(--rr-ink); }
.rr-action-cart .group-button .buttons { display: grid; gap: 8px; margin: 0; }
.rr-action-cart .group-button .button {
  display: block;
  padding: 12px 16px;
  border-radius: 40px;
  font-size: 13.5px;
  font-weight: 500;
  text-align: center;
  letter-spacing: .02em;
}
.rr-action-cart .group-button .button.checkout {
  background: var(--rr-rose);
  color: #fff;
}
.rr-action-cart .group-button .button.checkout:hover { background: #8C444B; color: #fff; }
.rr-action-cart .group-button .button.view-cart {
  background: transparent;
  border: 1px solid var(--rr-ink);
  color: var(--rr-ink);
}
.rr-action-cart .group-button .button.view-cart:hover { background: var(--rr-ink); color: #fff; }

/* empty state */
.rr-action-cart .cart_empty {
  margin: 0;
  padding: 22px 0 6px;
  list-style: none;
  text-align: center;
  color: var(--rr-muted);
}
.rr-action-cart .cart_empty .total { margin-top: 14px; }
.rr-action-cart .cart_empty .button.wc-continue {
  display: inline-block;
  padding: 11px 26px;
  border-radius: 40px;
  background: var(--rr-rose);
  color: #fff;
  font-size: 13.5px;
}
.rr-action-cart .cart_empty .button.wc-continue:hover { background: #8C444B; color: #fff; }

/* the theme's full-screen scrim belongs to the off-canvas variant */
.rr-action-cart .cart-popup::after { display: none; }

/* ---------- scrolled state ---------------------------------------------- */
.rr-header.is-compact .rr-rail { display: none; }
.rr-header.is-compact .rr-band-inner { min-height: 68px; }
.rr-header.is-compact .rr-brand img { height: 38px; }

/* ---------- narrow desktop ---------------------------------------------- */
@media (max-width: 1320px) {
  .rr-band-inner { gap: 20px; }
  .rr-nav-link { padding: 10px 10px 14px; font-size: 16.5px; }
  .rr-brand img { height: 42px; }
  .rr-panel-inner { gap: 0 36px; }
  .rr-panel-aside,
  .rr-panel-about { padding-inline-start: 36px; }
}
@media (max-width: 1140px) {
  .rr-nav-link { font-size: 15.5px; padding: 10px 8px 14px; }
  .rr-sprig { width: 52px; }
  .rr-pick { width: 132px; }
}

/* ---------- Arabic ------------------------------------------------------ */
body.rtl .rr-nav-link { font-family: 'Cairo', sans-serif; font-size: 16px; font-weight: 600; letter-spacing: 0; }
body.rtl .rr-panel-item > a { font-family: 'Cairo', sans-serif; font-size: 17px; }
body.rtl .rr-rail-promise .textwidget,
body.rtl .rr-rail-link,
body.rtl .rr-panel-eyebrow,
body.rtl .rr-panel-all { letter-spacing: 0; }

/* ---------- accessibility ----------------------------------------------- */
.rr-header a:focus-visible,
.rr-header button:focus-visible {
  outline: 2px solid var(--rr-rose);
  outline-offset: 3px;
  border-radius: 4px;
}
@media (prefers-reduced-motion: reduce) {
  .rr-sprig-stem,
  .rr-sprig-leaf,
  .rr-panel,
  .rr-band-inner,
  .rr-brand img,
  .rr-pick-img { transition: none !important; }
  /* Forcing the drawn state on every item put a sprig under all seven links
     at once and destroyed the current-item signal. Show it only where it
     means something, and show it instantly rather than drawing it. */
  .rr-nav-link .rr-sprig { opacity: 0; }
  .rr-nav-link:hover .rr-sprig,
  .rr-nav-link:focus-visible .rr-sprig,
  .rr-nav-item.has-panel.is-open > .rr-nav-link .rr-sprig,
  .rr-nav-item.is-current > .rr-nav-link .rr-sprig { opacity: 1; }
  .rr-sprig-stem { stroke-dashoffset: 0; }
  .rr-sprig-leaf { transform: scale(1); }
  .rr-panel { transform: none; }
}
