/* Loria design system — luxury minimal jewelry */

:root {
  --loria-bg: #ffffff;
  --loria-text: #4e4d4d;
  --loria-muted: #6b6b6b;
  --loria-accent: #c7b9b1;
  --loria-cream: #f7f6f4;
  --loria-border: #c7b9b1;
  --loria-container: 1360px;
  --loria-page-gutter: 40px;
  --loria-header-h: 66px;
  --loria-announcement-h: 0px;
  --loria-announcement-duration: 400ms;
  --loria-font: "Noto Sans Hebrew", system-ui, sans-serif;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

.loria-has-announcement {
  --loria-announcement-h: 32px;
}

body {
  margin: 0;
  overflow-x: hidden;
  font-family: var(--loria-font);
  font-weight: 400;
  color: var(--loria-text);
  background: var(--loria-bg);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover {
  color: var(--loria-accent);
}

.loria-container {
  width: min(calc(100% - (var(--loria-page-gutter, 40px) * 2)), var(--loria-container));
  margin-inline: auto;
}

.loria-container--narrow {
  width: min(100% - 2rem, 760px);
}

.loria-container--full {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.loria-skip-link:focus {
  position: fixed;
  top: 1rem;
  inset-inline-start: 1rem;
  z-index: 10000;
  width: auto;
  height: auto;
  clip: auto;
  padding: 0.75rem 1rem;
  background: var(--loria-text);
  color: #fff;
}

/* Buttons */
.loria-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.35rem;
  border: 1px solid transparent;
  font-family: inherit;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.loria-btn--primary {
  background: var(--loria-text);
  color: #fff;
}

.loria-btn--primary:hover {
  background: var(--loria-accent);
  color: #fff;
}

.loria-btn--ghost {
  background: transparent;
  border-color: var(--loria-border);
  color: var(--loria-text);
}

.loria-btn--ghost:hover {
  border-color: var(--loria-accent);
  color: var(--loria-accent);
}

.loria-btn--whatsapp {
  background: #c7b9b1;
  color: #fff;
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  justify-content: center;
}

.loria-btn--whatsapp:hover {
  background: #a89e91;
  color: #fff;
}

.loria-wa-icon {
  flex-shrink: 0;
  display: block;
}

/* Announcement carousel — topbar.ai: 45px bar, #bcb0a9, 16px Semibold white */
.loria-announcement {
  position: relative;
  background: #bcb0a9;
  color: #fff;
  height: 45px;
  overflow: hidden;
}

.loria-announcement__viewport {
  display: grid;
  height: 45px;
  align-items: center;
  justify-items: center;
}

.loria-announcement__item {
  grid-area: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 45px;
  padding: 0 18%;
  font-size: 16px;
  font-weight: 600;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity var(--loria-announcement-duration, 400ms) ease,
    visibility var(--loria-announcement-duration, 400ms) ease;
}

.loria-announcement__item.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.loria-announcement__text {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  white-space: nowrap;
}

.loria-announcement__text:hover {
  color: #fff;
}

.loria-announcement__control {
  position: absolute;
  top: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 45px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: #fff;
  transform: translateX(-50%);
}

.loria-announcement__control img {
  display: block;
  width: 6px;
  height: 12px;
}

.loria-announcement__control--next {
  left: 29.58%;
}

.loria-announcement__control--prev {
  left: 69.56%;
}

.loria-announcement__control--next img {
  transform: scaleX(-1);
}

.loria-announcement__control:disabled {
  opacity: 0.35;
  cursor: default;
}

.loria-announcement__control:focus-visible {
  outline: 2px solid #fff;
  outline-offset: -6px;
}

@media (max-width: 1024px) {
  .loria-announcement__control--next {
    left: 12%;
  }

  .loria-announcement__control--prev {
    left: 88%;
  }

  .loria-announcement__item {
    padding: 0 16%;
  }
}

@media (max-width: 767px) {
  .loria-announcement__control--next {
    left: 24px;
  }

  .loria-announcement__control--prev {
    left: auto;
    right: 8px;
    transform: none;
  }

  .loria-announcement__item {
    padding: 0 48px;
  }

  .loria-announcement__text {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .loria-announcement__item {
    transition: none;
  }
}

.loria-header {
  position: relative;
  z-index: 1000;
}

.loria-header-main {
  position: relative;
  background: #fff;
  z-index: 100;
}

.loria-header-main.is-sticky {
  position: fixed;
  top: 0;
  inset-inline: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  transition: transform 0.25s ease;
}

.loria-header-main.is-sticky.is-hidden {
  transform: translateY(-100%);
}

body.loria-header-is-sticky {
  padding-top: var(--loria-header-h);
}

/* ── Transparent / overlay header ────────────────────────────────────────── */
.loria-header-overlay {
  position: absolute;
  top: 0;
  inset-inline: 0;
  z-index: 990;
  background: transparent !important;
  border-bottom: none !important;
}

.loria-header-overlay .loria-header-main {
  background: transparent !important;
  border-bottom: none !important;
}

.loria-header-overlay .loria-announcement {
  background: #bcb0a9;
  color: #fff;
}

.loria-header-overlay.loria-header-color-light .loria-header-main {
  color: #fff;
}

.loria-header-overlay.loria-header-color-light .loria-header-actions button,
.loria-header-overlay.loria-header-color-light .loria-header-actions a,
.loria-header-overlay.loria-header-color-light .loria-menu > li > a {
  color: #fff;
}

.loria-header-overlay.loria-header-color-light .loria-header-actions img {
  filter: brightness(0) invert(1);
}

.loria-header-overlay.loria-header-color-light .loria-logo-img--bundled {
  filter: invert(1);
}

.loria-header-overlay.loria-header-color-light .loria-nav-toggle {
  color: #fff;
}

.loria-header-overlay ~ #primary > .elementor > .elementor-section:first-child,
.loria-header-overlay ~ #primary > .elementor > .e-con:first-child {
  margin-top: calc(-1 * (var(--loria-header-h) + var(--loria-announcement-h, 0px)));
}

.loria-header-overlay .loria-header-main.is-sticky,
.loria-header-overlay .loria-header-main.is-solid {
  background: #fff !important;
  color: var(--loria-text, #4e4d4d);
}

.loria-header-overlay .loria-header-main.is-sticky .loria-menu > li > a,
.loria-header-overlay .loria-header-main.is-sticky .loria-header-actions button,
.loria-header-overlay .loria-header-main.is-sticky .loria-header-actions a,
.loria-header-overlay .loria-header-main.is-solid .loria-menu > li > a,
.loria-header-overlay .loria-header-main.is-solid .loria-header-actions button,
.loria-header-overlay .loria-header-main.is-solid .loria-header-actions a {
  color: var(--loria-text, #4e4d4d);
}

.loria-header-main__inner {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1.5rem;
  min-height: var(--loria-header-h);
  width: 100%;
  padding-inline: 40px;
}

.loria-header-brand {
  grid-column: 1;
  grid-row: 1;
  display: flex;
  align-items: center;
  gap: 12px;
  justify-self: start;
}

.loria-primary-nav {
  grid-column: 2;
  grid-row: 1;
  justify-self: center;
  min-width: 0;
}

.loria-header-actions {
  grid-column: 3;
  grid-row: 1;
  justify-self: end;
}

.loria-header-logo .custom-logo-link img,
.loria-header-logo .custom-logo,
.loria-header-logo .loria-logo-img {
  display: block;
  height: 50px;
  width: auto;
  max-height: 50px;
  max-width: var(--loria-logo-max, 180px);
}

.loria-header-overlay.loria-header-color-light .loria-logo--overlay-main { display: none; }
.loria-header-overlay.loria-header-color-light .loria-logo--overlay-light { display: inline-block; }

.loria-header-overlay.loria-header-color-light .loria-header-main.is-sticky .loria-logo--overlay-light,
.loria-header-overlay.loria-header-color-light .loria-header-main.is-solid .loria-logo--overlay-light { display: none; }
.loria-header-overlay.loria-header-color-light .loria-header-main.is-sticky .loria-logo--overlay-main,
.loria-header-overlay.loria-header-color-light .loria-header-main.is-solid .loria-logo--overlay-main { display: inline-block; }

.loria-header-overlay .loria-header-main.is-sticky .loria-header-actions img,
.loria-header-overlay .loria-header-main.is-solid .loria-header-actions img {
  filter: brightness(0);
}
.loria-header-overlay .loria-header-main.is-sticky .loria-logo-img--bundled,
.loria-header-overlay .loria-header-main.is-solid .loria-logo-img--bundled {
  filter: none;
}
.loria-header-overlay .loria-header-main.is-sticky .loria-nav-toggle,
.loria-header-overlay .loria-header-main.is-solid .loria-nav-toggle {
  color: inherit;
}

.loria-site-title {
  font-size: 1.35rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.loria-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 28px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.loria-menu > li {
  position: static;
}

.loria-menu > li > a {
  display: inline-block;
  position: relative;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.2;
  padding: 6px 0;
  white-space: nowrap;
}

.loria-menu > li > a::after {
  content: "";
  position: absolute;
  inset-inline: 12%;
  bottom: 0;
  height: 1px;
  background: currentColor;
  opacity: 0;
}

.loria-menu > li:hover > a::after,
.loria-menu > li:focus-within > a::after,
.loria-menu > li.current-menu-item > a::after,
.loria-menu > li.loria-has-mega.is-open > a::after {
  opacity: 1;
}

.loria-header-actions {
  display: flex;
  align-items: center;
  gap: 18px;
}

.loria-header-actions button,
.loria-header-actions a {
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  color: inherit;
  position: relative;
  line-height: 0;
}

.loria-header-actions img {
  display: block;
  width: 20px;
  height: auto;
  filter: brightness(0);
}

.loria-header-wishlist img {
  width: 22px;
}

.loria-header-cart img {
  width: 18px;
}

.loria-topbar__phone {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.loria-topbar__phone-icon {
  display: block;
  flex-shrink: 0;
}

.loria-cart-count,
.loria-wishlist-count {
  position: absolute;
  top: -6px;
  inset-inline-end: -8px;
  min-width: 16px;
  height: 16px;
  border-radius: 999px;
  background: var(--loria-accent);
  color: #fff;
  font-size: 0.65rem;
  line-height: 16px;
  text-align: center;
  padding: 0 4px;
}

.loria-nav-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  background: none;
  border: 0;
  padding: 0.35rem;
  cursor: pointer;
  color: inherit;
  line-height: 0;
}

.loria-mega {
  position: absolute;
  top: 100%;
  inset-inline: 0;
  z-index: 120;
  background: #fff;
  color: var(--loria-text, #4e4d4d);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  padding: 28px 40px 48px;
}

.loria-has-mega:hover > .loria-mega,
.loria-has-mega:focus-within > .loria-mega,
.loria-has-mega.is-open > .loria-mega {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.loria-mega__inner {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 48px;
}

.loria-mega__links {
  flex: 0 0 180px;
}

.loria-mega__heading {
  display: block;
  margin: 0 0 16px;
  font-size: 16px;
  font-weight: 600;
}

.loria-mega__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.loria-mega__list a {
  display: block;
  padding: 6px 0;
  font-size: 16px;
  font-weight: 400;
}

.loria-mega__tiles {
  display: flex;
  gap: 24px;
}

.loria-mega__tile {
  display: flex;
  flex-direction: column;
  width: 300px;
  color: inherit;
}

.loria-mega__tile img,
.loria-mega__tile-ph {
  display: block;
  width: 300px;
  height: 380px;
  object-fit: cover;
  background: #0a1012;
}

.loria-mega__tile-title {
  display: block;
  margin-top: 12px;
  font-size: 14px;
  text-align: center;
}

.loria-primary-nav .loria-has-mega > .sub-menu {
  display: none;
}

/* ── Shared drawers / overlays ── */
.loria-drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 100000;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.loria-drawer-backdrop.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

body.loria-drawer-open {
  overflow: hidden;
}

.loria-drawer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.2rem;
  background: #fff;
  flex-shrink: 0;
}

.loria-drawer--menu .loria-drawer__header {
  background: #fff;
  border-bottom: 1px solid #eee;
}

.loria-drawer__brand .custom-logo {
  max-height: 36px;
  width: auto;
}

.loria-drawer__brand .loria-site-title {
  font-size: 1rem;
}

.loria-drawer__title {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.loria-drawer__close {
  appearance: none;
  background: none;
  border: 0;
  font-size: 0;
  line-height: 1;
  padding: 0.15rem 0.35rem;
  cursor: pointer;
  color: var(--loria-text);
  z-index: 2;
}

.loria-drawer__close::before {
  content: "\2715";
  display: inline-block;
  font-size: 24px;
  font-weight: 500;
  line-height: 1;
}

.loria-drawer__body {
  flex: 1;
  overflow: auto;
  padding: 0;
  -webkit-overflow-scrolling: touch;
}

.loria-drawer__empty {
  margin: 0;
  padding: 1.25rem;
  font-size: 0.95rem;
  line-height: 1.5;
}

.loria-drawer__empty a {
  text-decoration: underline;
}

/* Mobile menu drawer — Alukas-style side panel */
.loria-drawer--menu {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 100001;
  display: flex;
  flex-direction: column;
  width: 300px;
  max-width: 92vw;
  height: 100%;
  background: #fff;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
  transform: translateX(calc(-100% - 4px));
  transition: transform 0.5s ease, visibility 0s linear 0.5s;
  overflow: hidden;
  visibility: hidden;
  pointer-events: none;
}

.loria-drawer--menu.is-open {
  transform: translateX(0);
  transition-delay: 0s;
  visibility: visible;
  pointer-events: auto;
}

html[dir="rtl"] .loria-drawer--menu,
body.rtl .loria-drawer--menu {
  left: auto;
  right: 0;
  transform: translateX(calc(100% + 4px));
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
}

html[dir="rtl"] .loria-drawer--menu.is-open,
body.rtl .loria-drawer--menu.is-open {
  transform: translateX(0);
}

.loria-mini-cart {
  position: fixed;
  top: 0;
  bottom: 0;
  inset-inline-end: 0;
  z-index: 100001;
  display: flex;
  flex-direction: column;
  width: 390px;
  max-width: 94vw;
  background: #fff;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
  transform: translateX(100%);
  transition: transform 0.35s ease, visibility 0s linear 0.35s;
  visibility: hidden;
  pointer-events: none;
}

.loria-mini-cart.is-open {
  transform: translateX(0);
  visibility: visible;
  pointer-events: auto;
  transition-delay: 0s;
}

html[dir="rtl"] .loria-mini-cart {
  transform: translateX(-100%);
}

html[dir="rtl"] .loria-mini-cart.is-open {
  transform: translateX(0);
}

.loria-mini-cart__body {
  flex: 1;
  overflow: auto;
  padding: 1rem;
}

.loria-mini-cart__items {
  display: grid;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.loria-mini-cart__item {
  display: grid;
  grid-template-columns: 64px 1fr auto;
  gap: 10px;
  align-items: start;
}

.loria-mini-cart__item img {
  width: 64px;
  height: 64px;
  object-fit: cover;
}

.loria-mini-cart__item > div {
  display: grid;
  gap: 4px;
}

.loria-mini-cart__meta,
.loria-mini-cart__price {
  color: var(--loria-muted);
  font-size: 12px;
}

.loria-mini-cart__remove {
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 20px;
}

.loria-mini-cart__total {
  display: flex;
  justify-content: space-between;
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid var(--loria-border);
}

.loria-mini-cart__actions {
  display: grid;
  gap: 8px;
  padding: 1rem;
  padding-bottom: max(1rem, env(safe-area-inset-bottom));
  border-top: 1px solid var(--loria-border);
}

.loria-mini-cart__clear {
  justify-self: start;
}

.admin-bar .loria-drawer--menu {
  top: 32px;
  height: calc(100% - 32px);
}

@media (max-width: 600px) {
  .admin-bar .loria-drawer--menu {
    top: 0;
    height: 100%;
    z-index: 100001;
  }
}

.loria-menu--mobile {
  flex-direction: column;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.loria-menu--mobile > li,
.loria-menu--mobile .page_item {
  list-style: none;
}

.loria-menu--mobile a {
  display: block;
  padding: 0.9rem 1.25rem;
  font-size: 16px;
  color: #4e4d4d;
}

.loria-menu--mobile .sub-menu,
.loria-menu--mobile .children {
  list-style: none;
  margin: 0;
  padding: 0 0 0.5rem 0.85rem;
}

/* ── Multi-level drill-down mobile menu ─────────────────────────────────── */

/* Nav is the clipping viewport for the horizontal panel strip */
.loria-drill-nav {
  overflow: hidden;
  position: relative;
}

/* Horizontal panel strip — slides left/right between levels */
.loria-drill-slider {
  display: flex;
  align-items: flex-start;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}

/* Each level = full drawer width, never shrinks */
.loria-drill-panel {
  flex: 0 0 100%;
  width: 100%;
  min-width: 0;
}

/* Original sub-menus are hidden; they become panels on demand */
.loria-drill-sub-hidden {
  display: none !important;
}

/* Cloned sub-menu rendered as a panel list */
.loria-drill-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.loria-drill-list > li {
  list-style: none;
  position: relative;
}

.loria-drill-list > li > a {
  display: block;
  padding: 0.9rem 1.25rem;
  font-size: 16px;
  color: #4e4d4d;
  text-decoration: none;
}

/* Sub-panel header bar (back button + parent title) */
.loria-drill-panel-header {
  border-bottom: 2px solid var(--loria-border);
  background: #f5f5f5;
}

/* Back button */
.loria-drill-back {
  appearance: none;
  -webkit-appearance: none;
  background: none;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.85rem 1.25rem;
  font-size: 0.95rem;
  font-weight: 600;
  color: #4e4d4d;
  text-align: start;
}

/* Back arrow icon — chevron pointing left (LTR) */
.loria-drill-back-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.loria-drill-back-arrow::before {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateX(2px);
}

/* RTL: back arrow points right */
html[dir="rtl"] .loria-drill-back-arrow::before,
body.rtl .loria-drill-back-arrow::before {
  border-left: none;
  border-right: 2px solid currentColor;
  transform: rotate(-45deg) translateX(-2px);
}

.loria-drill-back-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Ensure parent <li>s are positioned so the chevron can anchor to them */
.loria-menu--mobile li.menu-item-has-children,
.loria-menu--mobile li.page_item_has_children,
.loria-drill-list li.menu-item-has-children,
.loria-drill-list li.page_item_has_children {
  position: relative;
}

/* Expand-chevron button — right edge for LTR */
.loria-drill-chevron {
  appearance: none;
  -webkit-appearance: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 48px;
  background: none;
  border: none;
  border-left: 1px solid var(--loria-border);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #aaa;
}

/* RTL: chevron on the left edge */
html[dir="rtl"] .loria-drill-chevron,
body.rtl .loria-drill-chevron {
  right: auto;
  left: 0;
  border-left: none;
}

/* Chevron arrow shape (›) */
.loria-drill-chevron::before {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg) translateX(-1px);
}

html[dir="rtl"] .loria-drill-chevron::before,
body.rtl .loria-drill-chevron::before {
  transform: rotate(-135deg) translateX(1px);
}

/* Reserve right-side space in parent links for the chevron (LTR) */
.loria-menu--mobile li.menu-item-has-children > a,
.loria-menu--mobile li.page_item_has_children > a,
.loria-drill-list li.menu-item-has-children > a,
.loria-drill-list li.page_item_has_children > a {
  padding-right: calc(1.25rem + 48px);
}

/* RTL: reserve left-side space */
html[dir="rtl"] .loria-menu--mobile li.menu-item-has-children > a,
html[dir="rtl"] .loria-menu--mobile li.page_item_has_children > a,
html[dir="rtl"] .loria-drill-list li.menu-item-has-children > a,
html[dir="rtl"] .loria-drill-list li.page_item_has_children > a,
body.rtl .loria-menu--mobile li.menu-item-has-children > a,
body.rtl .loria-menu--mobile li.page_item_has_children > a,
body.rtl .loria-drill-list li.menu-item-has-children > a,
body.rtl .loria-drill-list li.page_item_has_children > a {
  padding-right: 1.25rem;
  padding-left: calc(1.25rem + 48px);
}
/* ─────────────────────────────────────────────────────────────────────────── */

/* Search drawer — topbar-search-drawer.ai */
.loria-search-drawer {
  position: fixed;
  top: calc(var(--loria-announcement-h, 0px) + var(--loria-header-h));
  left: 0;
  right: 0;
  z-index: 100002;
  height: 0;
  overflow: visible;
  pointer-events: none;
}

.loria-search-drawer.is-open {
  pointer-events: auto;
}

.loria-search-drawer::before {
  content: "";
  position: fixed;
  top: calc(var(--loria-announcement-h, 0px) + var(--loria-header-h) + 72px);
  left: 0;
  right: 0;
  bottom: 0;
  background: #969798;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease;
}

.loria-search-drawer.is-open::before {
  opacity: 1;
  visibility: visible;
}

.loria-search-drawer__bar {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  height: 72px;
  padding: 0 40px;
  background: #fff;
  transform: translateY(-12px);
  opacity: 0;
  visibility: hidden;
  transition: transform 0.25s ease, opacity 0.25s ease, visibility 0.25s ease;
}

.loria-search-drawer.is-open .loria-search-drawer__bar {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}

.loria-search-drawer__heading {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

.loria-search-drawer__title {
  font-size: 16px;
  font-weight: 400;
}

.loria-search-drawer__close {
  width: 28px;
  height: 28px;
}

.loria-search-form--drawer {
  display: flex;
  flex-direction: row;
  direction: ltr;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
  max-width: 720px;
}

.loria-search-form__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  line-height: 0;
}

.loria-search-form__icon img {
  width: 20px;
  height: 20px;
  filter: brightness(0);
}

.loria-search-form .search-field {
  flex: 1;
  min-width: 0;
  padding: 0.5rem 0;
  border: 0;
  font-family: inherit;
  font-size: 16px;
  background: transparent;
  color: var(--loria-text);
}

.loria-search-form .search-field:focus {
  outline: none;
}

@media (max-width: 991px) {
  .loria-nav-toggle {
    display: flex !important;
  }

  .loria-header-phone,
  .loria-header-account {
    display: none !important;
  }

  .loria-header-main__inner {
    padding-inline: 16px;
    gap: 12px;
  }

  .loria-primary-nav {
    display: none !important;
  }

  .loria-header-logo .loria-logo-img,
  .loria-header-logo .custom-logo {
    height: 32px;
    max-height: 32px;
  }

  .loria-search-drawer__bar {
    padding: 0 16px;
    height: 64px;
  }

  .loria-search-drawer::before {
    top: calc(var(--loria-announcement-h, 0px) + var(--loria-header-h) + 64px);
  }

  .loria-mega {
    display: none;
  }
}

/* Footer — footer.ai: cream band, logo right, three link columns, centered copyright */
.loria-footer {
  margin-top: 0;
  padding: 72px 0 40px;
  background: #f7f6f4;
  color: var(--loria-text);
}

.loria-footer__inner {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 80px;
}

.loria-footer__brand {
  flex: 0 0 auto;
}

.loria-footer__brand .loria-logo-img,
.loria-footer__brand .custom-logo {
  height: 48px;
  width: auto;
  max-height: 48px;
  max-width: var(--loria-logo-max, 180px);
}

.loria-footer__nav {
  display: flex;
  flex-wrap: wrap;
  gap: 72px 96px;
}

.loria-footer__col {
  min-width: 140px;
}

.loria-footer__heading {
  margin: 0 0 16px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
}

.loria-footer__menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

.loria-footer__menu li {
  margin: 0 0 8px;
}

.loria-footer__menu a {
  font-size: 16px;
  font-weight: 400;
  color: inherit;
}

.loria-footer__bottom {
  margin-top: 56px;
}

.loria-footer__copy {
  margin: 0;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.04em;
}

@media (max-width: 900px) {
  .loria-footer {
    padding: 48px 0 32px;
  }

  .loria-footer__inner {
    flex-direction: column;
    gap: 40px;
  }

  .loria-footer__nav {
    gap: 32px 48px;
  }

  .loria-footer__bottom {
    margin-top: 40px;
  }
}

/* Shop layout */
.loria-shop-layout {
  display: grid;
  gap: 2rem;
  padding-block: 2rem;
}

.loria-shop-layout--left {
  grid-template-columns: 260px 1fr;
}

.loria-shop-layout--right {
  grid-template-columns: 1fr 260px;
}

.loria-shop-layout--right .loria-filters {
  order: 2;
}

.loria-shop-layout--offcanvas {
  grid-template-columns: 1fr;
}

.loria-shop-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--loria-border);
}

.loria-shop-main.is-loading,
.loria-shop-ajax-root.is-loading .loria-shop-main {
  opacity: 0.45;
  pointer-events: none;
  transition: opacity 0.2s;
}

ul.products {
  display: grid;
  gap: 1.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.products::before,
ul.products::after {
  display: none !important;
}

ul.products li.product,
ul.products .loria-product-card {
  width: 100% !important;
  min-width: 0;
}

.loria-product-card__inner {
  width: 100%;
}

.loria-shop-cols-2 ul.products {
  grid-template-columns: repeat(2, 1fr);
}

.loria-shop-cols-3 ul.products {
  grid-template-columns: repeat(3, 1fr);
}

.loria-shop-cols-4 ul.products {
  grid-template-columns: repeat(4, 1fr);
}

.loria-shop-cols-5 ul.products {
  grid-template-columns: repeat(5, 1fr);
}


@media (max-width: 900px) {
  .loria-shop-layout--left,
  .loria-shop-layout--right {
    grid-template-columns: 1fr;
  }

  .loria-shop-cols-3 ul.products,
  .loria-shop-cols-4 ul.products,
  .loria-shop-cols-5 ul.products {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 520px) {
  .loria-shop-cols-2 ul.products,
  .loria-shop-cols-3 ul.products,
  .loria-shop-cols-4 ul.products,
  .loria-shop-cols-5 ul.products {
    grid-template-columns: 1fr;
  }
}

.loria-product-card__media {
  display: block;
  position: relative;
  overflow: hidden;
  aspect-ratio: 1;
  background: var(--loria-cream, #f7f6f4);
}

.loria-product-card__media img,
.woocommerce ul.products li.product .loria-product-card__media img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  transition: transform 0.45s ease;
}

.loria-product-card:hover .loria-product-card__media img {
  transform: scale(1.04);
}

.loria-product-card__info {
  padding: 12px 4px 0;
  text-align: start;
}

.loria-product-card__title {
  display: block;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 400;
  min-height: 0;
  margin: 0 0 4px;
}

.loria-product-card__meta {
  margin: 0 0 6px;
  font-size: 13px;
  color: var(--loria-muted);
}

.loria-product-card__price {
  font-size: 14px;
  font-weight: 500;
}

.loria-product-card__price del {
  color: var(--loria-muted);
  font-weight: 400;
  margin-inline-end: 6px;
}

.loria-product-card__price ins {
  text-decoration: none;
}

.loria-product-card__rating {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 6px 0 8px;
  font-size: 12px;
}

.loria-product-card__rating-count {
  color: var(--loria-text);
}

.loria-product-card__wish {
  position: absolute;
  top: 10px;
  inset-inline-end: 10px;
  z-index: 3;
  display: flex;
  width: 32px;
  height: 32px;
  align-items: center;
  justify-content: center;
  color: var(--loria-text);
  background: transparent;
}

.loria-product-card__wish a,
.loria-product-card__wish .yith-wcwl-add-to-wishlist,
.loria-product-card__wish .add_to_wishlist {
  display: flex;
  align-items: center;
  justify-content: center;
  color: inherit;
}

.loria-product-card__material-swatches {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 6px 0 0;
  padding: 0;
  list-style: none;
  color: var(--loria-muted);
  font-size: 11px;
}

.loria-product-card__material-swatch {
  display: inline-block;
  border-bottom: 1px solid currentColor;
}

.loria-product-card__atc {
  position: static;
  inset: auto;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  margin-top: 12px;
  padding: 0 12px;
  background: #4e4d4d;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  opacity: 1;
  pointer-events: auto;
}

.loria-product-card:hover .loria-product-card__atc,
.loria-product-card:focus-within .loria-product-card__atc {
  opacity: 1;
  pointer-events: auto;
}

.loria-product-card__atc:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  opacity: 1;
  pointer-events: auto;
}

.loria-product-card.is-loading {
  opacity: 0.55;
  pointer-events: none;
}

.loria-product-card.is-error {
  outline: 2px solid #b42318;
  outline-offset: 2px;
}

.loria-products-slider-slide > .loria-product-card,
.loria-product-collection ul.products {
  list-style: none;
  margin: 0;
  padding: 0;
}

.loria-products-slider-slide > li.product {
  width: 100% !important;
}

.loria-product-card__cat {
  margin: 0 0 0.25rem;
  font-size: 0.75rem;
  color: var(--loria-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.loria-product-card__title {
  display: block;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 400;
  min-height: 0;
  margin: 0 0 4px;
}

/* Filters */
.loria-filters {
  align-self: start;
}

.loria-filters__header {
  display: none;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0;
  padding: 1.1rem 1.25rem;
  border-bottom: 1px solid var(--loria-border);
}

.loria-filters__title {
  margin: 0;
  font-size: 0.95rem;
}

.loria-filters-toggle {
  display: none;
}

.loria-shop-layout--offcanvas .loria-filters-toggle {
  display: inline-flex;
}

.loria-filter-widget,
.loria-filters .widget {
  margin-bottom: 1.5rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid var(--loria-border);
}

.loria-filters .widget-title {
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0 0 0.75rem;
}

.loria-filters ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.loria-filters li {
  margin: 0.35rem 0;
}

.loria-filters .wc-layered-nav-term.chosen > a,
.loria-filters .loria-product-sorting .chosen {
  font-weight: 600;
  color: var(--loria-accent, #c9a227);
}

/* Checkbox appearance for list-style filter options */
.loria-attributes-list .wc-layered-nav-term,
.loria-stock-filter-list .wc-layered-nav-term {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.loria-attributes-list .wc-layered-nav-term > a,
.loria-stock-filter-list .wc-layered-nav-term > a {
  display: flex;
  align-items: center;
  flex: 1;
  position: relative;
}

.loria-attributes-list .wc-layered-nav-term > a::before,
.loria-stock-filter-list .wc-layered-nav-term > a::before {
  content: "";
  display: inline-block;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border: 1px solid var(--loria-border, #c7b9b1);
  background: #fff;
  margin-inline-end: 8px;
  transition: border-color 0.15s ease;
}

.loria-attributes-list .wc-layered-nav-term.chosen > a::before,
.loria-stock-filter-list .wc-layered-nav-term.chosen > a::before {
  border-color: var(--loria-accent, #c7b9b1);
}

.loria-attributes-list .wc-layered-nav-term.chosen > a::after,
.loria-stock-filter-list .wc-layered-nav-term.chosen > a::after {
  content: "\2714";
  position: absolute;
  inset-inline-start: 1px;
  width: 14px;
  height: 14px;
  line-height: 14px;
  text-align: center;
  font-size: 10px;
  color: #fff;
  background: var(--loria-accent, #c7b9b1);
}

.loria-filters .count {
  opacity: 0.55;
  font-size: 0.85em;
  margin-inline-start: 0.35rem;
}

.loria-attributes-inline,
.loria-stock-filter-inline {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 0.75rem;
}

.loria-attributes-inline li,
.loria-stock-filter-inline li {
  margin: 0;
}

.loria-filter-empty {
  opacity: 0.45;
  pointer-events: none;
}

.loria-social-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.loria-social-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  min-height: 2rem;
  padding: 0.35rem 0.65rem;
  border: 1px solid var(--loria-border, #e5e5e5);
  text-decoration: none;
  font-size: 0.8rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: inherit;
  transition: border-color 0.2s ease, color 0.2s ease;
}

.loria-social-links a:hover {
  border-color: var(--loria-accent, #c9a227);
  color: var(--loria-accent, #c9a227);
}

.loria-social-links.icons-size-small a {
  font-size: 0.7rem;
  min-height: 1.75rem;
  padding: 0.25rem 0.5rem;
}

.loria-social-links.icons-size-large a {
  font-size: 0.9rem;
  min-height: 2.5rem;
  padding: 0.5rem 0.85rem;
}

.loria-social-links.icons-colour .loria-social-links__item--instagram a { color: #c13584; border-color: currentColor; }
.loria-social-links.icons-colour .loria-social-links__item--facebook a { color: #1877f2; border-color: currentColor; }
.loria-social-links.icons-colour .loria-social-links__item--twitter a { color: #111; border-color: currentColor; }
.loria-social-links.icons-colour .loria-social-links__item--youtube a { color: #ff0000; border-color: currentColor; }
.loria-social-links.icons-colour .loria-social-links__item--tiktok a { color: #111; border-color: currentColor; }
.loria-social-links.icons-colour .loria-social-links__item--linkedin a { color: #0a66c2; border-color: currentColor; }
.loria-social-links.icons-colour .loria-social-links__item--whatsapp a { color: #25d366; border-color: currentColor; }

/* Body-level filter portal drawer (escapes shop grid) */
.loria-drawer--filters {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 100001;
  display: flex;
  flex-direction: column;
  width: min(800px, 92vw);
  height: 100%;
  margin: 0;
  padding: 0;
  background: #fff;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
  transform: translateX(-100%);
  transition: transform 0.4s ease;
  overflow: hidden;
  pointer-events: none;
}

.loria-drawer--filters.is-open {
  transform: translateX(0);
  pointer-events: auto;
}

html[dir="rtl"] .loria-drawer--filters,
body.rtl .loria-drawer--filters {
  left: auto;
  right: 0;
  transform: translateX(100%);
}

html[dir="rtl"] .loria-drawer--filters.is-open,
body.rtl .loria-drawer--filters.is-open {
  transform: translateX(0);
}

.loria-drawer--filters .loria-filters__header {
  display: flex;
}

.loria-drawer--filters .loria-filters__inner,
.loria-drawer--filters .loria-drawer__body {
  flex: 1;
  overflow: auto;
  padding: 0 24px 24px;
  -webkit-overflow-scrolling: touch;
}

.loria-drawer--filters .loria-filters__header {
  padding: 20px 24px;
  border-bottom: 0;
}

.loria-drawer--filters .loria-filters__title {
  font-size: 18px;
  font-weight: 600;
}

.loria-drawer--filters .widget {
  margin: 0;
  padding: 0;
  border: 0;
}

.loria-drawer--filters .widget-title {
  position: relative;
  display: flex;
  min-height: 64px;
  align-items: center;
  justify-content: space-between;
  margin: -1px 0 0;
  padding: 0 28px 0 0;
  border-top: 1px solid var(--loria-border);
  border-bottom: 1px solid var(--loria-border);
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  user-select: none;
}

.loria-drawer--filters .widget-title::after {
  content: "−";
  position: absolute;
  inset-inline-end: 2px;
  font-size: 20px;
  font-weight: 400;
}

.loria-drawer--filters .widget.is-collapsed .widget-title::after {
  content: "+";
}

.loria-drawer--filters .widget > :not(.widget-title) {
  transition: opacity .2s ease;
}

.loria-drawer--filters .widget.is-collapsed > :not(.widget-title) {
  display: none;
}

.loria-drawer--filters .widget > ul,
.loria-drawer--filters .widget > form,
.loria-drawer--filters .widget > div:not(.widget-title) {
  margin-block: 16px 24px;
}

.loria-drawer-active-filters {
  padding: 14px 0 24px;
}

.loria-drawer-active-filters:empty {
  display: none;
}

.loria-drawer-active-filters .loria-active-filters {
  margin: 0;
}

.loria-filters__footer {
  flex-shrink: 0;
  display: flex;
  gap: 12px;
  padding: 16px 24px;
  border-top: 1px solid var(--loria-border);
  background: #fff;
}

.loria-filters__footer .loria-btn {
  flex: 1;
  min-height: 48px;
  justify-content: center;
  border-radius: 0;
}

.loria-filter-loading-overlay {
  position: absolute;
  inset: 0;
  z-index: 10;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.82);
}

.loria-filter-loading-overlay.is-visible {
  display: flex;
}

.loria-filter-loader {
  width: 42px;
  height: 42px;
  border: 2px solid var(--loria-border);
  border-top-color: var(--loria-accent);
  border-radius: 50%;
  animation: loria-spin .8s linear infinite;
}

@keyframes loria-spin {
  to { transform: rotate(360deg); }
}

.loria-filters--sidebar .loria-filters__header--sidebar {
  display: block;
  margin-bottom: 1rem;
  padding: 0;
  border: 0;
  background: none;
}

.loria-shop-layout--offcanvas .loria-filters-toggle {
  display: inline-flex;
}

@media (max-width: 991px) {
  .loria-filters-toggle {
    display: inline-flex !important;
  }

  .loria-shop-layout--left,
  .loria-shop-layout--right {
    grid-template-columns: 1fr;
  }

  /* Hide static sidebar on small screens — portal drawer is used instead */
  .loria-filters--sidebar {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .loria-drawer--filters {
    width: min(375px, 92vw);
  }

  .loria-filters__footer {
    flex-direction: column;
  }
}

/* PDP */
.loria-pdp-breadcrumbs {
  padding-top: 2rem;
}

.loria-single-product__grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 3rem;
  padding-block: 2.5rem;
  direction: ltr;
}

.loria-single-product__grid > * {
  direction: ltr;
  font-size: 16px;
  font-weight: 500;
}

.loria-single-product__gallery {
  position: sticky;
  top: calc(var(--loria-header-h, 72px) + 1rem);
  align-self: start;
}


html[dir="rtl"] .loria-single-product__grid > *,
body.rtl .loria-single-product__grid > * {
  direction: rtl;
}

@media (max-width: 991px) {
  .loria-single-product__grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .loria-single-product__gallery {
    position: static;
  }

  .loria-single-product .related.products ul.products,
  .loria-single-product .upsells.products ul.products {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    gap: 1rem;
    padding-bottom: 1rem;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .loria-single-product .related.products ul.products::-webkit-scrollbar,
  .loria-single-product .upsells.products ul.products::-webkit-scrollbar {
    display: none;
  }

  .loria-single-product .related.products ul.products li.product,
  .loria-single-product .upsells.products ul.products li.product {
    flex: 0 0 80%;
    scroll-snap-align: start;
    min-width: 0;
  }

  .loria-btn--whatsapp {
    width: 100%;
  }

  .loria-single-product__summary .product_title {
    font-size: 26px;
    line-height: 1.2;
  }

  .loria-single-product__grid > * {
    font-size: 18px;
  }
}

.woocommerce #content div.product div.images,
.woocommerce div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images,
.woocommerce #content div.product div.summary,
.woocommerce div.product div.summary,
.woocommerce-page #content div.product div.summary,
.woocommerce-page div.product div.summary {
  width: 100%;
}

.loria-single-product__summary .product_title {
  display: block; /* override Elementor --page-title-display: none */
  font-size: 24px;
  font-weight: 600;
  margin: 0 0 8px;
  line-height: 1.2;
}

.loria-single-product__summary .product_meta .sku_wrapper {
  display: none;
}

.loria-single-product__summary .product_meta {
  font-size: 16px;
}

.loria-single-product__summary .product_meta strong {
  font-weight: 700;
}

.loria-single-product__summary .variations {
  width: 100%;
  margin: 1.5rem 0;
}

.loria-single-product__summary .variations th,
.loria-single-product__summary .variations td {
  display: block;
  padding: 0 0 .5rem;
  text-align: start;
}

.loria-single-product__summary .variations select {
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--loria-text);
  border-radius: 0;
  padding: 8px 0 8px 28px;
  background-color: transparent;
  font-size: 15px;
  font-weight: 500;
}

.loria-single-product__summary .single_add_to_cart_button {
  width: 100%;
  min-height: 48px;
  border-radius: 0;
  padding: 12px 24px;
}

.loria-product-gallery {
  display: block;
}

.woocommerce-product-gallery {
  opacity: 1 !important;
}

.loria-pdp-badges {
  display: none;
}

.loria-product-card__wish,
.loria-product-card__wish a,
.loria-product-card__wish .yith-wcwl-add-to-wishlist,
.loria-product-card__wish .yith-wcwl-add-button {
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
}

.loria-product-gallery__grid,
.loria-product-gallery .woocommerce-product-gallery__wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
}

.loria-product-gallery .flex-viewport,
.loria-product-gallery .flex-control-nav,
.loria-product-gallery .flex-direction-nav,
.loria-product-gallery__thumbs {
  display: none !important;
}

/* FlexSlider appends .flex-viewport after custom thumbs; keep main image first. */
.loria-product-gallery .flex-viewport {
  order: 1;
}

.loria-product-gallery .woocommerce-product-gallery__wrapper {
  margin: 0;
}

.loria-product-gallery .woocommerce-product-gallery__image {
  aspect-ratio: 1;
  overflow: hidden;
}

.loria-product-gallery .woocommerce-product-gallery__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.loria-product-gallery__thumbs {
  order: 2;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.loria-product-gallery__thumb {
  padding: 0;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  aspect-ratio: 1;
}

.loria-product-gallery__thumb.is-active {
  border-color: var(--loria-text);
}

.loria-product-gallery__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.loria-product-gallery .flex-control-thumbs,
.loria-product-gallery ol.flex-control-nav {
  display: none !important;
}

.loria-product-gallery .woocommerce-product-gallery__wrapper.flex-control-nav {
  display: grid !important;
}

.loria-product-tabs {
  margin-top: 3rem;
}

.loria-product-tabs > .tabs {
  display: flex;
  justify-content: center;
  gap: 2.5rem;
  list-style: none;
  margin: 0;
  padding: 0 0 1rem;
  border-bottom: 1px solid var(--loria-border);
}

.loria-product-tabs > .tabs li a {
  display: block;
  padding-bottom: 8px;
  font-size: 16px;
  font-weight: 600;
}

.loria-product-tabs > .tabs li.active a {
  box-shadow: inset 0 -2px var(--loria-text);
}

.loria-product-tab__toggle {
  display: none;
}

.loria-product-tabs .woocommerce-Tabs-panel {
  max-width: 900px;
  margin: 0 auto;
  padding: 2rem 0;
}

/* Accordion tabs (Zaban-style) — active at all breakpoints when enabled */
body.loria-pdp-accordion .loria-product-tabs {
  border-top: 1px solid var(--loria-border);
}

body.loria-pdp-accordion .loria-product-tabs > .tabs {
  display: none;
}

body.loria-pdp-accordion .loria-product-tab {
  border-bottom: 1px solid var(--loria-border);
}

body.loria-pdp-accordion .loria-product-tab__toggle {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 20px 0;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 16px;
  font-weight: 700;
  text-align: start;
  cursor: pointer;
}

body.loria-pdp-accordion .loria-product-tab__toggle > span:last-child {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg); /* chevron down = closed */
  transition: transform 0.25s ease;
}

body.loria-pdp-accordion .loria-product-tab__toggle[aria-expanded="true"] > span:last-child {
  transform: rotate(225deg); /* chevron up = open */
}

body.loria-pdp-accordion .loria-product-tabs .woocommerce-Tabs-panel {
  max-width: none;
  margin: 0;
  padding: 0 0 1.5rem;
}

body.loria-pdp-accordion .loria-product-tabs .shop_attributes,
body.loria-pdp-accordion .loria-product-tabs table.woocommerce-product-attributes {
  width: 100%;
  border-collapse: collapse;
  border: 0;
}

body.loria-pdp-accordion .loria-product-tabs .shop_attributes tr,
body.loria-pdp-accordion .loria-product-tabs table.woocommerce-product-attributes tr {
  border: 0;
}

body.loria-pdp-accordion .loria-product-tabs .shop_attributes tr:nth-child(odd),
body.loria-pdp-accordion .loria-product-tabs table.woocommerce-product-attributes tr:nth-child(odd) {
  background: #f5f5f5
}

body.loria-pdp-accordion .loria-product-tabs .shop_attributes th,
body.loria-pdp-accordion .loria-product-tabs .shop_attributes td,
body.loria-pdp-accordion .loria-product-tabs table.woocommerce-product-attributes th,
body.loria-pdp-accordion .loria-product-tabs table.woocommerce-product-attributes td {
  padding: 10px 16px;
  border: 0;
  text-align: start;
  font-size: 15px;
  font-weight: 400;
  background: transparent;
}


.shop_attributes th,
table.woocommerce-product-attributes th {
  display: table-cell !important;
  width: 50%;
}

.shop_attributes td,
table.woocommerce-product-attributes td {
  display: table-cell !important;
  width: 50%;
}

.loria-product-tabs .woocommerce-Reviews-title,
.loria-product-tabs .woocommerce-Tabs-panel--description > h2:first-child,
.loria-product-tabs .woocommerce-Tabs-panel--additional_information > h2:first-child {
  display: none;
}

.woocommerce table.shop_attributes td {
  font-style: normal;
}

.woocommerce table.shop_attributes th {
  font-weight: 700 !important;
}


.loria-single-product .related.products,
.loria-single-product .upsells.products {
  margin-top: 4rem;
}

.loria-single-product .related.products > h2,
.loria-single-product .upsells.products > h2 {
  font-size: 24px;
  font-weight: 600;
  text-align: start;
}

.loria-single-product .related.products ul.products,
.loria-single-product .upsells.products ul.products {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.loria-pdp-guidance {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  margin: 0 0 1rem;
  color: var(--loria-muted);
  font-size: 13px;
}

.loria-pdp-guidance p {
  margin: 0;
}

.loria-pdp-guidance--low-stock,
.loria-pdp-guidance--backorder {
  color: #8b5e34;
}

.loria-pdp-guidance--out-of-stock {
  color: #a23d3d;
}

.loria-size-guide-trigger {
  padding: 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  background: transparent;
  color: inherit;
  cursor: pointer;
}

.loria-size-guide {
  position: fixed;
  z-index: 1000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(0, 0, 0, 0.45);
}

.loria-size-guide__panel {
  position: relative;
  width: min(680px, 100%);
  max-height: min(80vh, 720px);
  overflow: auto;
  padding: 32px;
  background: #fff;
  color: var(--loria-text);
}

.loria-size-guide__close {
  position: absolute;
  top: 12px;
  inset-inline-end: 12px;
  border: 0;
  background: transparent;
  font-size: 24px;
  cursor: pointer;
}

.loria-search-results {
  max-width: 720px;
  margin: 0 auto;
}

.loria-search-results__list {
  display: grid;
  gap: 8px;
  margin: 16px 0;
  padding: 0;
  list-style: none;
}

.loria-search-results__list a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px;
  color: inherit;
}

.loria-search-results__list img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  background: var(--loria-cream);
}

.loria-search-results__list span {
  display: grid;
  gap: 2px;
}

.loria-search-results__list small,
.loria-search-results__list em {
  color: var(--loria-muted);
  font-size: 12px;
  font-style: normal;
}

.loria-search-results__all {
  display: inline-block;
  border-bottom: 1px solid currentColor;
}

/* Commerce */
.loria-cart-empty {
  max-width: 520px;
  margin: 3rem auto;
  padding: 3rem 1.5rem;
  text-align: center;
  background: var(--loria-cream);
}

.loria-cart-empty p {
  margin: 0 0 1.5rem;
}

.loria-cart__checkout-only {
  margin: 0;
  color: var(--loria-muted);
  font-size: 13px;
}

.loria-checkout-status {
  min-height: 1.5rem;
}

.loria-account-welcome {
  padding: 1rem;
  background: var(--loria-cream);
}

.loria-order-tracking {
  max-width: 620px;
  margin: 2rem auto;
}

.loria-cart,
.loria-checkout,
.loria-myaccount,
.loria-login-wrap {
  padding-block: 2rem;
}

.loria-myaccount {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 2rem;
}

@media (max-width: 768px) {
  .loria-myaccount {
    grid-template-columns: 1fr;
  }
}

.loria-login-wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
}

.woocommerce table.shop_table {
  width: 100%;
  border-collapse: collapse;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  padding: 0.85rem;
  border-bottom: 1px solid var(--loria-border);
  text-align: start;
}

.woocommerce-pagination {
  margin-top: 40px;
  margin-bottom: 24px;
}

.woocommerce-pagination ul {
  display: flex;
  gap: 18px;
  justify-content: center;
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce-pagination a,
.woocommerce-pagination span {
  display: inline-flex;
  min-width: 1.25rem;
  height: auto;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 14px;
}

.woocommerce-pagination .current {
  background: transparent;
  color: inherit;
  border: 0;
  border-bottom: 1px solid currentColor;
}

/* Content */
.loria-main {
  min-height: 50vh;
}

.entry-title,
.page-title {
  font-weight: 500;
  letter-spacing: 0.02em;
}

.loria-post-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 2rem;
}

.loria-post-card__title {
  font-size: 1.15rem;
  font-weight: 500;
}

.loria-filters-close {
  background: none;
  border: 0;
  font-size: 1.5rem;
  cursor: pointer;
  line-height: 1;
}

/* ── PLP archive (Zaban-style) ── */
.woocommerce-products-header {
  display: none;
}

.loria-archive-header {
  position: relative;
  padding: 12px 0 24px;
  background: #fff;
}

.loria-archive-title {
  margin: 8px 0 12px;
  font-size: 32px;
  font-weight: 500;
}

.loria-shop-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid #e8e4df;
}

.loria-archive-header--banner {
  min-height: 280px;
  display: flex;
  align-items: center;
}

.loria-archive-header--banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.65);
}

.loria-archive-header--banner .loria-container {
  position: relative;
  z-index: 1;
}

.loria-archive-header--light,
.loria-archive-header--light a,
.loria-archive-header--light .loria-archive-desc-inner {
  color: #fff;
}

.loria-archive-header--light::before {
  background: rgba(0, 0, 0, 0.38);
}

.loria-page-breadcrumbs {
  padding-top: 20px;
}

.loria-breadcrumbs {
  font-size: 14px;
  font-weight: 400;
  margin: 0 0 0.75rem;
  color: var(--loria-text);
}

.loria-breadcrumbs a {
  color: inherit;
}

.loria-breadcrumbs__sep {
  margin-inline: 6px;
}

.loria-archive-title {
  margin: 0 0 1rem;
  font-size: 36px;
  line-height: 1.2;
  font-weight: 600;
}

.loria-archive-description { max-width: 50%; margin-bottom: 2rem; }

.loria-archive-desc-inner {
  font-size: 15px;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.loria-archive-description.is-expanded .loria-archive-desc-inner {
  display: block;
  -webkit-line-clamp: unset;
}

.loria-desc-toggle {
  background: none; border: 0; padding: 6px 0 0; margin: 0;
  font-size: 13px; font-weight: 600; text-decoration: underline; cursor: pointer; color: inherit;
}

.loria-subcats { display: flex; flex-wrap: wrap; gap: 16px 42px; margin: 0 0 2rem; }
.loria-subcat-item {
  display: flex; flex-direction: column; align-items: center; gap: 0.4rem;
  text-align: center; font-size: 14px; font-weight: 600;
}
.loria-subcat-img, .loria-subcat-placeholder {
  width: 100px; height: 100px; object-fit: cover; border-radius: 50%;
  background: var(--loria-cream, #f7f6f4);
}


.loria-shop-toolbar {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  padding: 12px 0;
  border: 0;
  margin-bottom: 24px;
}

.loria-shop-toolbar .loria-filters-toggle {
  display: inline-flex;
  justify-self: start;
  border: 0;
  padding: 0;
  background: transparent;
  color: inherit;
  font-size: 15px;
  font-weight: 500;
  gap: 8px;
}

.loria-shop-toolbar .loria-filters-toggle svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.loria-shop-toolbar__result {
  justify-self: center;
}

.loria-shop-toolbar__result .woocommerce-result-count {
  margin: 0;
  font-size: 15px;
  font-weight: 500;
}

.loria-shop-toolbar__ordering {
  justify-self: end;
}

.loria-shop-toolbar__ordering .woocommerce-ordering {
  margin: 0;
}

.loria-shop-toolbar__ordering select {
  width: auto;
  max-width: 100%;
  border: 0;
  border-bottom: 1px solid currentColor;
  border-radius: 0;
  padding: 6px 0 6px 28px;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231a1a1a' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left center;
  appearance: none;
  font-size: 15px;
  font-weight: 500;
}

.loria-category-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px;
  padding-block: 1rem 3rem;
}

.loria-category-grid__card {
  display: block;
  text-align: center;
}

.loria-category-grid__image {
  display: block;
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--loria-cream);
}

.loria-category-grid__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}

.loria-category-grid__card:hover img {
  transform: scale(1.04);
}

.loria-category-grid__title {
  display: block;
  margin-top: 12px;
  font-size: 18px;
  font-weight: 600;
}

.loria-category-block,
.loria-category-bottom-seo {
  margin-block: 2rem;
}

.loria-category-bottom-seo .loria-archive-description {
  max-width: 100%;
}

.loria-category-bottom-seo .loria-archive-desc-inner {
  -webkit-line-clamp: 5;
  font-size: 16px;
}

.loria-category-bottom-seo h2 {
  font-size: 18px;
}

@media (max-width: 767px) {


  .loria-archive-header {
    padding-top: 1.25rem;
  }

  .loria-archive-header--banner {
    min-height: 220px;
  }

  .loria-archive-title {
    font-size: 28px;
  }

  .loria-archive-description {
    max-width: 100%;
  }

  .loria-subcats {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 16px;
    padding-bottom: 8px;
    scrollbar-width: none;
  }

  .loria-subcats::-webkit-scrollbar {
    display: none;
  }

  .loria-subcats.has-overflow {
    -webkit-mask-image: linear-gradient(to left, transparent 0, #000 52px);
    mask-image: linear-gradient(to left, transparent 0, #000 52px);
  }

  html[dir="rtl"] .loria-subcats.has-overflow,
  body.rtl .loria-subcats.has-overflow {
    -webkit-mask-image: linear-gradient(to right, transparent 0, #000 52px);
    mask-image: linear-gradient(to right, transparent 0, #000 52px);
  }

  .loria-subcat-item {
    flex: 0 0 calc((100vw - 80px) / 3.5);
    scroll-snap-align: start;
  }

  .loria-subcat-img,
  .loria-subcat-placeholder {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
  }

  .loria-shop-toolbar {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 18px;
    margin-bottom: 16px;
  }

  .loria-shop-toolbar__result {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: start;
  }

  .loria-shop-toolbar__ordering {
    grid-column: 2;
    grid-row: 1;
  }

  .loria-shop-toolbar .loria-filters-toggle {
    grid-column: 1;
    grid-row: 1;
  }

  .loria-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }

  .loria-category-grid__title {
    font-size: 16px;
  }

  .loria-product-card__title {
    min-height: 60px;
    font-size: 18px;
    line-height: 1.2;
  }
}

.loria-active-filters {
  display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; margin: 0 0 1.25rem;
}
.loria-active-filters__chip {
  display: inline-flex; align-items: center; gap: 0.35rem;
  padding: 0.35rem 0.65rem; border: 1px solid var(--loria-border); font-size: 0.8rem;
}
.loria-active-filters__clear { font-size: 0.8rem; text-decoration: underline; }

.loria-product-card__media { position: relative; }
.loria-product-card__img { width: 100%; height: 100%; object-fit: cover; }
.loria-product-card__img--front {
  position: relative;
  z-index: 0;
  display: block;
  opacity: 1 !important;
  visibility: visible !important;
}
.loria-product-card__media .loria-product-card__img--hover,
.woocommerce ul.products li.product .loria-product-card__media .loria-product-card__img--hover {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none;
  transition: opacity 0.35s ease, visibility 0.35s ease;
}
@media (hover: hover) {
  .loria-product-card__media:hover .loria-product-card__img--hover {
    opacity: 1 !important;
    visibility: visible !important;
  }
}

.loria-product-labels {
  position: absolute; top: 0.65rem; inset-inline-start: 0.65rem; z-index: 2;
  display: flex; flex-direction: column; gap: 0.35rem;
}
.loria-label {
  display: inline-block; padding: 0.2rem 0.45rem; font-size: 12px;
  letter-spacing: 0.06em; text-transform: uppercase; background: var(--loria-text); color: #fff;
}
.loria-label--sale { background: #4e4d4d; }
.loria-label--bestseller { background: #4e4d4d; }
.loria-label--new { background: #4e4d4d; }
.loria-label--oos { background: #888; }

.loria-plp-swatches {
  display: flex; flex-wrap: wrap; gap: 0.35rem; list-style: none; margin: 0.5rem 0; padding: 0;
}
.loria-plp-swatch, .loria-filter-swatch, .loria-variation-swatch {
  width: 18px; height: 18px; border-radius: 50%; border: 1px solid rgba(0,0,0,0.15);
  padding: 2px; cursor: pointer; background: #fff; overflow: hidden;
}
.loria-plp-swatch { width: 24px; height: 24px; }
.loria-filter-swatch, .loria-variation-swatch { width: 30px; height: 30px; }
.loria-swatch-color,
.loria-swatch-image {
  display: block; width: 100%; height: 100%; border-radius: inherit; object-fit: cover;
}
.loria-plp-swatch:has(.loria-swatch-label),
.loria-filter-swatch:has(.loria-swatch-label),
.loria-variation-swatch:has(.loria-swatch-label) {
  width: auto; min-width: 36px; border-radius: 0; padding-inline: 8px;
}
.loria-swatch-label { display: block; white-space: nowrap; font-size: 12px; line-height: 22px; }
.loria-plp-swatch.is-active, .loria-variation-swatch.is-active {
  outline: 2px solid var(--loria-text); outline-offset: 2px;
}

.loria-attributes-chips { display: flex; flex-wrap: wrap; gap: 0.4rem; }
.loria-attributes-chips li { margin: 0 !important; }
.loria-attributes-chips a,
.loria-attributes-chips > li > span {
  display: inline-block; padding: 0.35rem 0.7rem; border: 1px solid var(--loria-border); font-size: 0.8rem;
}
.loria-attributes-chips .chosen a { border-color: var(--loria-accent); color: var(--loria-accent); }
.loria-attributes-swatch { display: flex; flex-wrap: wrap; gap: 0.45rem; }

.loria-pdp-sku { font-size: 0.85rem; opacity: 0.65; margin: 0 0 0.75rem; }
.loria-pdp-share {
  display: flex; flex-wrap: wrap; gap: 12px; align-items: center;
  margin: 20px 0 20px; font-size: 14px;
}
.loria-pdp-share__label { font-weight: 700; margin-inline-end: 4px; }
.loria-pdp-share__link {
  display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center;
  background: #fff; border: 1px solid var(--loria-border); border-radius: 50%;
  padding: 10px; cursor: pointer; color: inherit; transition: border-color .2s, background .2s;
}
.loria-pdp-share__link:hover,
.loria-pdp-share__link.is-copied { background: var(--loria-cream); }
.loria-pdp-share__link svg { display: block; width: 100%; height: 100%; fill: currentColor; }
.loria-pdp-trust { font-size: 0.9rem; opacity: 0.75; }
.loria-variation-swatches { display: flex; flex-wrap: wrap; gap: 0.45rem; margin-bottom: 0.5rem; }
.loria-pdp-sticky-summary .loria-single-product__summary {
  position: sticky; top: calc(var(--loria-header-h, 72px) + 1rem); align-self: start;
}

.loria-promo-bar {
  background: var(--loria-secondary, #4e4d4d); color: #fff; text-align: center;
  font-size: 0.85rem; padding: 0.55rem 0;
}
.loria-promo-bar a { color: inherit; text-decoration: underline; }
.loria-topbar__inner {
  display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.75rem; align-items: center;
}
.loria-logo--mobile { display: none; }
.loria-logo--desktop { display: inline-block; }

@media (max-width: 991px) {
  .loria-logo--desktop { display: none; }
  .loria-logo--mobile { display: inline-block; }
}


.loria-cookie-notice {
  position: fixed; bottom: 1rem; inset-inline-start: 1rem; inset-inline-end: 1rem;
  z-index: 100010; max-width: 420px; background: #fff; border: 1px solid var(--loria-border);
  padding: 1rem; box-shadow: 0 8px 30px rgba(0,0,0,0.12);
  display: flex; flex-direction: column; gap: 0.75rem;
}
.loria-newsletter-popup {
  position: fixed; inset: 0; z-index: 100020; background: rgba(0,0,0,0.5);
  display: flex; align-items: center; justify-content: center; padding: 1rem;
}
.loria-newsletter-popup__panel {
  position: relative; background: #fff; padding: 2rem; max-width: 420px; width: 100%;
}
.loria-footer__payments { max-width: 220px; margin: 0.75rem 0; height: auto; }
.loria-footer__note { font-size: 0.85rem; opacity: 0.7; }

/* ── Heading accent line (opt-in) ─────────────────────────────────────────── */
/* Add this class (e.g. via Elementor "Advanced → CSS Classes") to any heading
   to show a short line beneath it. It does nothing on its own — heading tags
   without this class are unaffected. */
.loria-contact-section-title, .loria-heading-line {
  position: relative;
  display: inline-block;
  padding-bottom: 14px;
}
.loria-contact-section-line::after, .loria-heading-line::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translateX(0%);
  width: 60px;
  height: 3px;
  background-color: var(--loria-accent);
}

/* Optional alignment modifier: align the line to the start edge instead of centering it */
.loria-contact-section-title--start::after, .loria-heading-line--start::after {
  left: 0;
  inset-inline-start: 0;
  transform: none;
}

/* ── Scroll-triggered fade-in entrance ────────────────────────────────────── */
/* Applied automatically to all custom Loria widgets via [data-loria-animate]. */
@media (prefers-reduced-motion: no-preference) {
  [data-loria-animate] {
    opacity: 0;
    transform: translateY(28px);
    transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
                transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--loria-delay, 0s);
  }
  [data-loria-animate].is-visible {
    opacity: 1;
    transform: none;
  }
}

/* Always show widgets fully visible inside the Elementor editor and preview */
.elementor-editor-active [data-loria-animate],
.elementor-editor-preview [data-loria-animate] {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* Hide WhatsApp header icon on mobile */
@media (max-width: 767px) {
  .loria-header-whatsapp {
    display: none;
  }
}

/* ── Archive / shop empty state ────────────────────────────────────────────── */
.loria-empty-state {
  padding: 3rem 1rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}

.loria-empty-state__title {
  font-size: 22px;
  font-weight: 500;
  color: var(--loria-text);
  margin: 0;
  letter-spacing: 0.01em;
  line-height: 1.5;
}

@media (max-width: 767px) {
  .loria-empty-state__title {
    font-size: 20px;
  }
}

.loria-empty-state__hint {
  display: block;
  font-size: 0.9em;
  font-weight: 400;
  color: var(--loria-muted);
  margin-top: 0.35em;
}

.loria-empty-state__cats {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.625rem;
  max-width: 600px;
}

/* CTA-style button — matches the inquiry/product CTA treatment */
.loria-empty-state__cta-btn {
  background: var(--loria-accent);
  color: #fff;
  border-color: var(--loria-accent);
  letter-spacing: 0.03em;
}

.loria-empty-state__cta-btn:hover {
  background: #a89e91;
  border-color: #a89e91;
  color: #fff;
}

/* Suppress WooCommerce default grey notice box */
.loria-shop-main .woocommerce-info {
  display: none;
}

/* Hide filter UI when page has no products and no active filters */
body.loria-shop-no-results #loria-shop-toolbar-fragment,
body.loria-shop-no-results .widget-area,
body.loria-shop-no-results #loria-filters-panel,
body.loria-shop-no-results #loria-filters-sidebar {
  display: none !important;
}

/* Mockup commerce pass */
.loria-btn--dark {
  background: #4e4d4d;
  color: #fff;
  border-color: #4e4d4d;
}

.loria-btn--dark:hover {
  background: #3a3939;
  color: #fff;
}

.otgs-development-site-front-end {
  display: none !important;
}

ul.products {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px 20px;
}

.loria-product-card:hover .loria-product-card__media img {
  transform: none;
}

.loria-product-card__wish .yith-wcwl-add-to-wishlist,
.loria-product-card__wish .yith-wcwl-add-button,
.loria-product-card__wish .add_to_wishlist {
  margin: 0 !important;
  width: 22px;
  height: 22px;
}

.loria-product-card__wish .yith-wcwl-add-to-wishlist span:not(.yith-wcwl-icon),
.loria-product-card__wish .yith-wcwl-add-button a span:not(.yith-wcwl-icon) {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.loria-product-card__wish svg,
.loria-product-card__wish i,
.loria-product-card__wish .yith-wcwl-icon {
  font-size: 18px !important;
  color: #4e4d4d !important;
}

.loria-archive-header .loria-container {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
  column-gap: 48px;
  align-items: start;
}

.loria-archive-header .loria-breadcrumbs,
.loria-archive-header .loria-archive-title {
  grid-column: 2;
}

.loria-archive-description {
  grid-column: 2;
  max-width: none;
  margin-bottom: 0;
}

.loria-shop-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 0;
  margin-bottom: 28px;
  border-top: 1px solid #e8e4df;
  border-bottom: 1px solid #e8e4df;
}

.loria-shop-toolbar__controls {
  display: flex;
  align-items: center;
  gap: 28px;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .single_add_to_cart_button,
.wp-element-button,
.button.alt {
  background: #4e4d4d !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce .single_add_to_cart_button:hover {
  background: #3a3939 !important;
  color: #fff !important;
}

.loria-single-product__summary .quantity {
  display: flex;
  align-items: center;
  gap: 0;
  border: 1px solid #d9d2cb;
  width: 120px;
  margin-bottom: 12px;
}

.loria-qty,
.woocommerce .quantity {
  display: inline-flex;
  align-items: center;
  border: 1px solid #d9d2cb;
  direction: ltr;
}

.loria-qty-btn {
  width: 36px;
  height: 36px;
  border: 0;
  background: #fff;
  color: inherit;
  cursor: pointer;
}

.loria-qty input,
.woocommerce .quantity input.qty,
.loria-mini-cart__quantity {
  width: 48px;
  height: 36px;
  border: 0;
  text-align: center;
  background: transparent;
  box-shadow: none;
}

.loria-pdp-benefits {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 20px 0;
  padding: 0;
  list-style: none;
  text-align: center;
}

.loria-pdp-benefits li {
  padding: 12px 8px;
  background: #f7f6f4;
}

.loria-pdp-benefits strong,
.loria-pdp-benefits span {
  display: block;
  font-size: 13px;
  font-weight: 500;
}

.loria-pdp-benefits span {
  font-weight: 400;
  color: var(--loria-muted);
}

.loria-pdp-complete {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 16px 0;
  border-top: 1px solid #e8e4df;
  border-bottom: 1px solid #e8e4df;
}

.loria-pdp-complete__title {
  grid-column: 1 / -1;
  margin: 0;
  font-weight: 600;
}

.loria-pdp-complete__item {
  display: flex;
  gap: 12px;
  align-items: center;
}

.loria-pdp-complete__item img {
  width: 72px;
  height: 72px;
  object-fit: cover;
  background: #f7f6f4;
}

.loria-pdp-help {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin-top: 8px;
  padding: 16px;
  background: #f3f1ee;
}

.loria-pdp-help p {
  margin: 0;
  font-size: 14px;
}

.loria-single-product .related.products > h2,
.loria-pdp-bestsellers > h2 {
  font-size: 28px;
  font-weight: 600;
  text-align: start;
  margin: 48px 0 24px;
}

.woocommerce-cart .entry-header,
.woocommerce-checkout .entry-header,
.loria-wishlist-page .entry-header,
.woocommerce-page.woocommerce-cart .entry-title,
body.woocommerce-checkout .loria-main > .loria-container {
  width: 100%;
}

.woocommerce-cart .entry-header,
.woocommerce-checkout .entry-header,
.loria-wishlist-page .entry-header {
  display: none;
}

.loria-mini-cart {
  inset-inline-end: auto !important;
  right: 0;
  left: auto;
  transform: translateX(100%);
}

html[dir="rtl"] .loria-mini-cart,
body.rtl .loria-mini-cart {
  transform: translateX(100%);
}

html[dir="rtl"] .loria-mini-cart.is-open,
body.rtl .loria-mini-cart.is-open,
.loria-mini-cart.is-open {
  transform: translateX(0);
}

.loria-drawer--filters {
  inset-inline-end: auto !important;
  right: 0;
  left: auto;
}

.loria-product-gallery .woocommerce-product-gallery__image {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  aspect-ratio: 1;
}

.loria-pdp-atc-wish,
.loria-pdp-atc-wish a,
.loria-pdp-atc-wish .yith-wcwl-add-to-wishlist {
  font-size: 0 !important;
  line-height: 0 !important;
}

.loria-pdp-atc-wish svg,
.loria-pdp-atc-wish .yith-wcwl-icon {
  font-size: 18px !important;
  color: #4e4d4d !important;
}

.loria-product-card__title {
  min-height: 2.7em;
}

.woocommerce-notices-wrapper .woocommerce-info {
  display: none;
}

.loria-mini-cart__item {
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: 12px;
  padding: 16px 0;
  border-bottom: 1px solid #eee;
}

.loria-mini-cart__thumb img {
  width: 88px;
  height: 88px;
  object-fit: cover;
  background: #f7f6f4;
}

.loria-mini-cart__details {
  display: grid;
  gap: 6px;
  align-content: start;
}

.loria-mini-cart__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.loria-mini-cart__remove {
  border: 0;
  background: transparent;
  padding: 0;
  color: inherit;
  cursor: pointer;
  text-decoration: underline;
}

.loria-mini-cart__total {
  display: flex;
  justify-content: space-between;
  margin: 24px 0 12px;
  font-size: 16px;
}

.loria-mini-cart__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.loria-cart-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 24px 0 32px;
}

.loria-cart-title {
  margin: 0;
  font-size: 36px;
  font-weight: 600;
}

.loria-cart-clear {
  min-width: 180px;
  min-height: 44px;
  border: 1px solid #4e4d4d;
  background: #fff;
  cursor: pointer;
}

.loria-cart .product-price {
  display: none;
}

.loria-cart .actions .button {
  display: none;
}

.cart-collaterals {
  max-width: 420px;
  margin-inline-start: auto;
}

.loria-checkout {
  display: grid;
  grid-template-columns: 1fr 0.9fr;
  gap: 48px;
  align-items: start;
}

.loria-checkout #customer_details,
.loria-checkout .col2-set {
  grid-column: 1;
}

.loria-checkout #order_review_heading,
.loria-checkout #order_review {
  grid-column: 2;
}

.loria-wishlist ul.products,
.yith-wcwl-form ul.products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px 20px;
}

@media (max-width: 991px) {
  ul.products,
  .loria-pdp-bestsellers ul.products,
  .loria-single-product .related.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .loria-archive-header .loria-container,
  .loria-pdp-benefits,
  .loria-checkout,
  .loria-mini-cart__actions {
    grid-template-columns: 1fr;
  }

  .loria-product-gallery__grid,
  .loria-product-gallery .woocommerce-product-gallery__wrapper {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 520px) {
  ul.products {
    grid-template-columns: 1fr;
  }
}

/* Mockup pixel pass */
.loria-archive-header .loria-container {
  display: grid;
  grid-template-columns: minmax(0, 0.46fr) minmax(0, 0.54fr);
  column-gap: 64px;
  align-items: start;
}

.loria-archive-header__main {
  grid-column: 1;
}

.loria-archive-header .loria-archive-description {
  grid-column: 2;
  grid-row: 1;
  max-width: none;
  margin: 0;
}

.loria-archive-header .loria-subcats {
  grid-column: 1 / -1;
}

.loria-archive-title {
  font-size: 42px;
  font-weight: 500;
  margin: 8px 0 0;
}

.loria-shop-toolbar {
  display: flex !important;
  grid-template-columns: none;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 0;
  margin-bottom: 28px;
  border-top: 1px solid #e8e4df;
  border-bottom: 1px solid #e8e4df;
}

.loria-shop-toolbar__sort-label {
  font-size: 14px;
  margin-inline-end: 8px;
}

.loria-shop-toolbar .loria-filters-toggle {
  border: 1px solid #4e4d4d;
  background: #fff;
  min-height: 40px;
  padding: 0 16px;
  color: inherit;
}

.loria-product-card__title {
  text-align: center;
  font-size: 14px;
  min-height: 0;
}

.loria-product-card__info {
  text-align: center;
}

.loria-product-card__price,
.loria-product-card__rating,
.loria-plp-swatches {
  justify-content: center;
}

.loria-plp-swatches {
  justify-content: center;
}

.loria-product-card__atc {
  background: #4e4d4d;
  color: #fff;
  margin-top: 16px;
  min-height: 46px;
  font-size: 14px;
}

.loria-single-product__summary .loria-pdp-sku,
.loria-single-product__summary .loria-pdp-share,
.loria-single-product__summary .product_meta,
.loria-single-product__summary .loria-pdp-guidance,
.loria-single-product__summary .quantity,
.loria-single-product__summary .woocommerce-variation-add-to-cart .quantity {
  display: none !important;
}

.loria-single-product__summary form.cart,
.loria-single-product__summary .woocommerce-variation-add-to-cart {
  display: block;
  width: 100%;
  margin-top: 8px;
}

.loria-single-product__summary .single_add_to_cart_button {
  flex: 1;
  min-height: 52px;
  font-size: 16px;
}

.loria-pdp-atc-wish {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  min-width: 52px;
  border: 1px solid #d9d2cb;
}

.loria-pdp-benefits {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 24px 0 8px;
  padding: 0;
  list-style: none;
  text-align: center;
}

.loria-pdp-benefits li {
  padding: 8px 4px 12px;
  background: transparent;
}

.loria-pdp-benefits__icon {
  width: 32px;
  height: 32px;
  margin: 0 auto 8px;
  display: block;
}

.loria-pdp-complete {
  grid-template-columns: 1fr auto;
  border-top: 1px solid #e8e4df;
  border-bottom: 1px solid #e8e4df;
  padding: 18px 0;
}

.loria-pdp-complete .loria-btn {
  min-height: 40px;
  padding: 0 18px;
}

.loria-pdp-help {
  background: #f3f1ee;
  padding: 18px 20px;
  margin-top: 16px;
}

.loria-cart-product {
  display: flex;
  align-items: center;
  gap: 16px;
}

.loria-cart-product__thumb img {
  width: 88px;
  height: 88px;
  object-fit: cover;
  background: #f7f6f4;
}

.loria-cart-product__info a {
  display: block;
  font-weight: 500;
}

.loria-cart .product-remove .remove {
  width: auto;
  height: auto;
  background: none !important;
  color: inherit !important;
  font-size: 14px;
  text-decoration: underline;
}

.loria-cart-actions-row {
  display: none;
}

.cart-collaterals {
  max-width: 420px;
  margin-inline-start: 0;
  margin-inline-end: auto;
}

.cart_totals h2 {
  font-size: 22px;
  font-weight: 600;
  margin: 32px 0 16px;
}

.loria-cart-coupon-note {
  margin: 16px 0 20px;
  padding: 14px 16px;
  background: #f3f1ee;
  font-size: 14px;
}

.wc-proceed-to-checkout .checkout-button {
  display: flex;
  width: 100%;
  min-height: 48px;
  align-items: center;
  justify-content: center;
}

.loria-mini-cart__item {
  grid-template-columns: 88px 1fr;
}

.loria-mini-cart__actions .loria-btn--ghost {
  border-color: #4e4d4d;
  color: #4e4d4d;
}

body.loria-checkout-page .loria-header,
body.loria-checkout-page .loria-footer,
body.loria-checkout-page .loria-floating-whatsapp,
body.loria-checkout-page .loria-promo-bar {
  display: none !important;
}

body.loria-checkout-page {
  padding-top: 0;
}

body.loria-checkout-page .loria-main {
  padding: 0;
}

body.loria-checkout-page .loria-container {
  width: 100%;
  max-width: none;
  margin: 0;
}

.loria-checkout-wrap,
.loria-checkout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr);
  min-height: 100vh;
  gap: 0;
  padding: 0;
}

.loria-checkout__primary {
  padding: 48px 8vw 80px;
  background: #fff;
}

.loria-checkout__logo {
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}

.loria-checkout__summary {
  grid-column: 2;
  grid-row: 1;
  background: #f4f1ec;
  padding: 56px 8% 80px;
}

.loria-checkout-block {
  margin-bottom: 32px;
}

.loria-checkout-block__title {
  margin: 0 0 16px;
  padding: 12px 16px;
  background: #f4f1ec;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
}

.loria-checkout__summary .loria-checkout-block__title,
.loria-checkout-block--payment .loria-checkout-block__title {
  background: #f4f1ec;
}

.loria-shipping-methods {
  list-style: none;
  margin: 0;
  padding: 0;
}

.loria-shipping-methods label {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 10px 0;
}

.loria-checkout .woocommerce-billing-fields > h3,
.loria-checkout .woocommerce-shipping-fields > h3,
.loria-checkout .woocommerce-additional-fields > h3,
.loria-checkout .woocommerce-billing-fields #billing_country_field,
.loria-checkout .woocommerce-billing-fields #billing_state_field {
  display: none !important;
}

.loria-checkout .form-row-first,
.loria-checkout .form-row-last {
  width: 48%;
  float: none;
  display: inline-block;
  vertical-align: top;
}

.loria-checkout input.input-text,
.loria-checkout textarea {
  border: 1px solid #d9d2cb;
  border-radius: 0;
  min-height: 44px;
  background: #fff;
}

.loria-checkout-coupon {
  margin: 24px 0;
}

.loria-checkout-coupon__label {
  margin: 0 0 10px;
  text-align: start;
}

.loria-checkout-coupon__row {
  display: grid;
  grid-template-columns: 1fr 140px;
  gap: 0;
}

.loria-checkout-coupon__row input {
  border: 1px solid #cfc8c0;
  min-height: 48px;
}

.loria-checkout-item {
  display: grid;
  grid-template-columns: 72px 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 8px 0 20px;
}

.loria-checkout-item__thumb {
  position: relative;
}

.loria-checkout-item__qty {
  position: absolute;
  top: -8px;
  inset-inline-start: -8px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #4e4d4d;
  color: #fff;
  font-size: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.loria-checkout .woocommerce-checkout-review-order-table,
.loria-checkout .woocommerce-checkout-review-order-table td,
.loria-checkout .woocommerce-checkout-review-order-table th {
  background: transparent;
  border: 0;
}

.loria-checkout #payment {
  background: transparent;
}

.loria-checkout #place_order {
  width: 100%;
  min-height: 52px;
}

.loria-variant-modal {
  position: fixed;
  inset: 0;
  z-index: 100010;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.45);
}

.loria-variant-modal[hidden] {
  display: none;
}

.loria-variant-modal__panel {
  position: relative;
  width: min(420px, calc(100vw - 32px));
  background: #fff;
  padding: 36px 28px 28px;
}

.loria-variant-modal__close {
  position: absolute;
  top: 16px;
  inset-inline-end: auto;
  inset-inline-start: 16px;
  border: 0;
  background: none;
  font-size: 22px;
  cursor: pointer;
}

.loria-variant-modal__title {
  margin: 0 0 12px;
  font-size: 22px;
  font-weight: 600;
  text-align: start;
}

.loria-variant-modal__measure,
.loria-variant-modal__back {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  border: 0;
  background: none;
  padding: 0;
  color: inherit;
  cursor: pointer;
  text-decoration: underline;
}

.loria-variant-modal__options {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
  display: grid;
  gap: 10px;
}

.loria-variant-option {
  width: 100%;
  min-height: 44px;
  border: 1px solid #d9d2cb;
  background: #fff;
  cursor: pointer;
}

.loria-variant-option.is-selected {
  border-color: #4e4d4d;
}

.loria-variant-modal__atc {
  width: auto;
  min-width: 140px;
}

.loria-size-guide.is-open,
.loria-size-guide:not([hidden]) {
  position: fixed;
  inset: 0;
  z-index: 100010;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.45);
}

.loria-size-guide__panel {
  width: min(520px, calc(100vw - 32px));
  background: #fff;
  padding: 36px 32px;
}

.loria-wishlist-page .entry-title,
.loria-wishlist .wishlist-title,
.yith-wcwl-form h2 {
  font-size: 36px;
  font-weight: 500;
  text-align: start;
}

.loria-wishlist-empty {
  display: block;
  padding: 36px 24px;
  background: #f4f1ec;
  text-align: center;
}

.loria-wishlist-empty .loria-btn {
  margin-top: 16px;
}

.yith-wcwl-form .yith-add-all-to-cart,
.wishlist_table .button.add_all_to_cart {
  display: flex;
  margin: 32px auto 0;
  min-width: 240px;
  min-height: 44px;
  border: 1px solid #4e4d4d !important;
  background: #fff !important;
  color: #4e4d4d !important;
}

.loria-drawer--filters .loria-filters__title {
  font-size: 20px;
}

.loria-filters__footer .loria-btn--dark {
  background: #4e4d4d;
  color: #fff;
}

@media (max-width: 991px) {
  .loria-archive-header .loria-container,
  .loria-checkout-wrap,
  .loria-checkout {
    grid-template-columns: 1fr;
  }

  .loria-archive-header .loria-archive-description {
    grid-column: 1;
    grid-row: auto;
  }

  .loria-checkout__summary {
    grid-column: 1;
    grid-row: auto;
  }

  .loria-pdp-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Mockup pixel pass 2 */
.loria-label,
.loria-label--sale,
.loria-label--bestseller,
.loria-label--new {
  background: #e8e2d9;
  color: #4e4d4d;
  font-size: 10px;
  letter-spacing: 0.04em;
  padding: 4px 8px;
  font-weight: 500;
}

.loria-product-card__atc {
  white-space: nowrap;
  width: 100%;
}

.loria-product-card__wish {
  inset-inline-end: 10px;
  inset-inline-start: auto;
}

.loria-product-gallery .woocommerce-product-gallery__image,
.loria-product-gallery .woocommerce-product-gallery__image a,
.loria-product-gallery .woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 100% !important;
  opacity: 1 !important;
  object-fit: cover;
}

.loria-product-gallery .woocommerce-product-gallery__trigger {
  display: none !important;
}

.loria-checkout--ltr,
.loria-checkout.loria-checkout--ltr {
  direction: ltr;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

.loria-checkout--ltr .loria-checkout__primary,
.loria-checkout--ltr .loria-checkout__summary {
  direction: rtl;
}

.loria-checkout--ltr .loria-checkout__primary {
  grid-column: 1;
  grid-row: 1;
}

.loria-checkout--ltr .loria-checkout__summary {
  grid-column: 2;
  grid-row: 1;
}

.loria-drawer--filters {
  width: 420px;
  max-width: 92vw;
}

.loria-filters__footer {
  direction: ltr;
}

.loria-drawer--filters .widget-title {
  padding-inline-start: 28px;
  padding-inline-end: 4px;
}

.loria-drawer--filters .widget-title::after {
  inset-inline-end: auto;
  inset-inline-start: 8px;
}

.loria-mini-cart:has(.loria-mini-cart__empty) .loria-mini-cart__actions {
  display: none;
}

.loria-cart .shop_table thead th,
.loria-cart .shop_table td {
  border-left: 0;
  border-right: 0;
  background: transparent;
  font-weight: 500;
}

.loria-cart .product-quantity .quantity,
.loria-cart .loria-qty {
  border: 1px solid #d9d2cb;
}

.loria-single-product__summary .variations {
  width: 100%;
  margin: 0 0 16px;
}

.loria-single-product__summary .variations select {
  border: 1px solid #d9d2cb;
  border-radius: 0;
  min-height: 44px;
  padding: 8px 12px;
  background: #fff;
  width: 100%;
}

.loria-variation-value:has(.loria-variation-swatches) select,
.loria-variation-value:has(.loria-variation-swatches) .reset_variations {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.loria-checkout .form-row {
  position: relative;
  margin: 0 0 12px;
}

.loria-checkout .form-row label {
  position: absolute;
  inset-inline-start: 12px;
  top: 12px;
  margin: 0;
  font-size: 13px;
  z-index: 1;
  pointer-events: none;
}

.loria-checkout .form-row .input-text,
.loria-checkout .form-row textarea {
  padding-inline-start: 110px;
}

.loria-checkout-coupon-row td {
  padding: 8px 0 20px !important;
}

.loria-checkout-coupon-row,
.loria-checkout-coupon-row td {
  border: 0 !important;
}

.loria-wishlist-head {
  margin: 8px 0 28px;
}

.loria-wishlist-title {
  margin: 8px 0 0;
  font-size: 36px;
  font-weight: 500;
  text-align: start;
}

.loria-variant-modal__measure-icon {
  display: inline-flex;
  width: 22px;
  height: 22px;
  align-items: center;
  justify-content: center;
  border: 1px solid #4e4d4d;
  border-radius: 50%;
}

body.loria-checkout-page .woocommerce-notices-wrapper,
body.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-info,
body.woocommerce-checkout .entry-title {
  display: none;
}

@media (max-width: 991px) {
  .loria-checkout--ltr,
  .loria-checkout.loria-checkout--ltr {
    grid-template-columns: 1fr;
  }

  .loria-checkout--ltr .loria-checkout__summary,
  .loria-checkout--ltr .loria-checkout__primary {
    grid-column: 1;
    grid-row: auto;
  }
}

/* Mockup pixel pass 3 */
.loria-checkout-wrap {
  display: block !important;
}

.loria-checkout.loria-checkout--ltr {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(380px, 0.92fr);
  width: 100%;
  min-height: 100vh;
  direction: ltr;
}

.loria-checkout--ltr .loria-checkout__primary {
  min-width: 0;
  max-width: 680px;
  width: 100%;
  margin: 0 auto;
  padding: 48px 40px 80px;
}

.loria-checkout--ltr .loria-checkout__summary {
  min-width: 0;
}

.loria-checkout .col2-set,
.loria-checkout .col-1,
.loria-checkout .col-2 {
  width: 100% !important;
  float: none !important;
  max-width: none !important;
}

.loria-checkout .form-row-first,
.loria-checkout .form-row-last {
  width: calc(50% - 8px) !important;
  max-width: calc(50% - 8px);
}

.loria-checkout .form-row-wide,
.loria-checkout .woocommerce-additional-fields .form-row {
  width: 100% !important;
  max-width: none;
}

.loria-checkout #payment,
.loria-checkout .woocommerce-checkout-payment {
  width: 100%;
  background: transparent !important;
}

.loria-checkout #payment .payment_box,
.loria-checkout .woocommerce-privacy-policy-text {
  display: none;
}

.loria-checkout-item,
.loria-checkout-item__info {
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
}

.loria-checkout-item__info {
  display: block;
}

ul.products li.product,
.loria-product-card__inner {
  min-width: 0;
}

.loria-product-card__inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.loria-product-card__meta {
  display: none;
}

.loria-product-card__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.loria-product-card__atc {
  margin-top: auto;
  flex-shrink: 0;
}

.loria-cart-product__thumb img,
.woocommerce table.cart img {
  width: 88px !important;
  height: 88px !important;
  max-width: none !important;
  object-fit: cover;
}

.cart_totals .shop_table,
.cart_totals .shop_table td,
.cart_totals .shop_table th,
.cart_totals {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none;
}

.cross-sells,
.woocommerce-cart .cross-sells {
  display: none !important;
}

.woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-message {
  display: none !important;
}

.loria-single-product__summary .woocommerce-product-details__short-description {
  display: none;
}

.loria-single-product__summary form.cart {
  width: 100%;
}

.loria-single-product__summary .single_add_to_cart_button {
  flex: 1 1 auto !important;
  width: 100% !important;
}

.loria-pdp-simple-swatches {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  margin: 8px 0 16px;
}

.loria-pdp-simple-swatches__label {
  font-size: 14px;
}

.loria-pdp-simple-swatches .loria-plp-swatches {
  margin: 0;
  justify-content: flex-end;
}

.loria-checkout__logo img,
.loria-checkout__logo svg,
.loria-checkout__logo .custom-logo {
  max-height: 56px;
  width: auto;
}

.loria-checkout .woocommerce-billing-fields__field-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 16px;
  direction: rtl;
}

.loria-checkout .woocommerce-billing-fields__field-wrapper .form-row {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0;
}

.loria-checkout #order_comments_field,
.loria-checkout .woocommerce-additional-fields .form-row {
  grid-column: 1 / -1;
}

.loria-checkout .form-row .optional,
.loria-checkout .woocommerce-additional-fields h3 {
  display: none !important;
}

.loria-checkout .woocommerce-shipping-fields .shipping_address,
.loria-checkout .woocommerce-shipping-fields > h3 {
  display: none !important;
}

.loria-checkout #ship-to-different-address {
  display: block;
  margin: 12px 0 0;
  text-align: start;
}

.loria-checkout .wc_payment_methods,
.loria-checkout .payment_box {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.loria-product-card__material-swatches {
  display: none !important;
}

.loria-checkout #place_order {
  width: 100% !important;
  margin-top: 16px;
}

.loria-product-card {
  overflow: hidden;
}

.loria-plp-swatches {
  max-width: 100%;
  overflow: hidden;
}

.loria-single-product__summary form.cart {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
}

.loria-pdp-atc-row {
  display: flex !important;
  align-items: stretch;
  gap: 12px;
  width: 100% !important;
  max-width: 100%;
  box-sizing: border-box;
}

.loria-pdp-atc-row .single_add_to_cart_button {
  flex: 1 1 auto !important;
  width: 100% !important;
  max-width: none !important;
}

.loria-pdp-atc-row .loria-pdp-atc-wish {
  flex: 0 0 52px;
  width: 52px;
}

.loria-checkout .woocommerce-billing-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
    "first last"
    "phone email"
    "city address1"
    "postcode apt";
  gap: 12px 16px;
  direction: rtl;
}

.loria-checkout .woocommerce-billing-fields__field-wrapper > .form-row {
  display: none !important;
}

.loria-checkout #billing_first_name_field { display: block !important; grid-area: first; }
.loria-checkout #billing_last_name_field { display: block !important; grid-area: last; }
.loria-checkout #billing_phone_field { display: block !important; grid-area: phone; }
.loria-checkout #billing_email_field { display: block !important; grid-area: email; }
.loria-checkout #billing_address_1_field { display: block !important; grid-area: address1; }
.loria-checkout #billing_city_field { display: block !important; grid-area: city; }
.loria-checkout #billing_postcode_field { display: block !important; grid-area: postcode; }
.loria-checkout #billing_address_2_field { display: block !important; grid-area: apt; }

.loria-checkout .woocommerce-billing-fields__field-wrapper > .form-row.hidden,
.loria-checkout #billing_country_field,
.loria-checkout #billing_state_field {
  display: none !important;
}

.loria-cart-coupon-note {
  white-space: normal;
  line-height: 1.5;
}

.loria-cart .shop_table {
  border: 0;
}

.loria-cart .shop_table thead th {
  border-top: 0;
}

.loria-pdp-atc-row .quantity,
.loria-pdp-atc-row .qty {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
}

.loria-pdp-atc-wish .button,
.loria-pdp-atc-wish a.button {
  display: none !important;
}

.loria-checkout__logo {
  min-height: 52px;
  margin: 36px auto 48px;
}

.loria-checkout__logo img {
  height: 52px !important;
  width: auto !important;
  max-width: 200px;
  display: block !important;
  margin: 0 auto;
}

.loria-checkout .woocommerce-shipping-fields {
  display: block !important;
}

.loria-checkout #ship-to-different-address {
  display: block !important;
  margin-top: 8px;
  text-align: start;
}

.loria-checkout #billing_address_2_field label:empty::before,
.loria-checkout #billing_address_2_field label .screen-reader-text {
  content: "דירה";
}

.loria-checkout #billing_address_2_field label:empty::before {
  content: "דירה";
}

/* Pixel lock vs mockups (non-homepage). */
.loria-single-product__summary form.cart,
.loria-single-product__summary .woocommerce-variation-add-to-cart {
  display: block !important;
  width: 100% !important;
}

.loria-pdp-atc-row .quantity,
.loria-pdp-atc-row .qty,
.loria-single-product__summary form.cart > .quantity {
  display: none !important;
}

.loria-single-product__summary .single_add_to_cart_button,
.loria-pdp-atc-row .single_add_to_cart_button {
  flex: 1 1 auto !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 52px;
}

.loria-single-product__summary > .yith-add-to-wishlist-button-block,
form.cart + .yith-add-to-wishlist-button-block {
  display: none !important;
}

.loria-pdp-size {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  margin: 0 0 20px;
}

.loria-pdp-size__label {
  font-size: 14px;
}

.loria-pdp-size__select {
  flex: 1;
  min-height: 44px;
  border: 1px solid #d9d2cb;
  border-radius: 0;
  background: #fff;
  padding: 8px 12px;
}

.loria-pdp-rating,
.woocommerce-product-rating {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin: 0 0 16px;
}

.star-rating {
  display: inline-block;
  position: relative;
  overflow: hidden;
  width: 5.2em;
  height: 1em;
  line-height: 1;
  font-size: 13px;
}

.star-rating::before {
  content: "★★★★★";
  color: #d9d2cb;
  letter-spacing: 0.08em;
}

.star-rating span {
  position: absolute;
  top: 0;
  inset-inline-start: 0;
  overflow: hidden;
  height: 1em;
}

.star-rating span::before {
  content: "★★★★★";
  color: #c4a574;
  letter-spacing: 0.08em;
}

.loria-product-card__rating {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.related.products .loria-product-card__atc {
  display: none !important;
}

body.loria-pdp-accordion .loria-product-tab__toggle > span:last-child {
  width: auto;
  height: auto;
  border: 0;
  transform: none !important;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
}

body.loria-pdp-accordion .loria-product-tab__toggle > span:last-child::before {
  content: "+";
}

body.loria-pdp-accordion .loria-product-tab__toggle[aria-expanded="true"] > span:last-child::before {
  content: "−";
}

body.loria-pdp-accordion .loria-product-tabs .woocommerce-Tabs-panel[hidden],
body.loria-pdp-accordion .loria-product-tab__toggle[aria-expanded="false"] + .woocommerce-Tabs-panel {
  display: none !important;
}

.loria-checkout #customer_details .col2-set,
.loria-checkout #customer_details .col-1,
.loria-checkout #customer_details .col-2 {
  display: contents;
}

.loria-checkout #customer_details {
  display: flex;
  flex-direction: column;
}

.loria-checkout .woocommerce-billing-fields {
  order: 1;
}

.loria-checkout .woocommerce-additional-fields {
  order: 2;
}

.loria-checkout .woocommerce-shipping-fields {
  order: 3;
  display: block !important;
  margin-top: 8px;
}

.loria-checkout #ship-to-different-address {
  display: block !important;
  margin: 12px 0 0;
  text-align: start;
}

.loria-checkout #billing_address_2_field label,
.loria-checkout #billing_address_2_field label.screen-reader-text {
  position: absolute !important;
  width: auto !important;
  height: auto !important;
  clip: auto !important;
  clip-path: none !important;
  overflow: visible !important;
  margin: 0 !important;
  inset-inline-start: 12px;
  top: 12px;
  font-size: 13px;
}

.loria-qty,
.woocommerce .quantity,
.loria-mini-cart .loria-qty,
.loria-cart .quantity {
  direction: ltr;
}

.cart_totals th {
  white-space: nowrap;
  padding-inline-end: 32px;
}

.loria-cart .shop_table,
.loria-cart .shop_table td,
.loria-cart .shop_table th {
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none;
}

.loria-cart-item-attr {
  display: block;
  margin-top: 4px;
  font-size: 13px;
  font-weight: 400;
}

.loria-pdp-complete__item {
  direction: rtl;
}

.loria-checkout .woocommerce-terms-and-conditions-wrapper {
  display: block !important;
  margin: 0 0 16px;
  text-align: start;
}

.loria-checkout .woocommerce-form__label-for-checkbox {
  display: flex !important;
  align-items: center;
  gap: 8px;
  justify-content: flex-end;
}

.single-product span.onsale,
.loria-single-product .onsale {
  display: none !important;
}

.loria-pdp-badges {
  display: flex !important;
  justify-content: flex-end;
  gap: 8px;
  margin: 0 0 8px;
}

.loria-pdp-badges .loria-label {
  background: #e8e2d9 !important;
  color: #4e4d4d !important;
  font-size: 10px;
  letter-spacing: 0.04em;
  padding: 4px 8px;
}

.loria-stars {
  color: #c4a574;
  letter-spacing: 0.06em;
  font-size: 13px;
  line-height: 1;
  font-family: Arial, "Segoe UI Symbol", sans-serif;
}

.loria-variant-modal__close,
.loria-size-guide__close {
  left: 16px !important;
  right: auto !important;
  inset-inline-start: 16px !important;
  inset-inline-end: auto !important;
  top: 16px;
}

.loria-variant-modal__back {
  display: flex !important;
  text-decoration: none !important;
}

.loria-variant-modal__back::before {
  content: "‹";
  font-size: 18px;
  line-height: 1;
}

.loria-checkout #payment .form-row.place-order {
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
  gap: 16px;
  float: none !important;
  width: 100% !important;
}

.loria-checkout #place_order {
  order: 2;
  width: 100% !important;
  margin: 0 !important;
}

.loria-checkout .woocommerce-terms-and-conditions-wrapper {
  order: 1;
  width: 100%;
}

.loria-checkout .woocommerce-terms-and-conditions-link {
  display: inline !important;
}

.loria-pdp-complete__item img {
  width: 88px;
  height: 88px;
  background: #f3f1ee;
}

.loria-cart-coupon-note {
  max-width: 280px;
  margin-inline-start: auto;
}

.cart_totals td {
  white-space: nowrap;
}

.loria-contact-page {
  max-width: 920px;
  margin: 0 auto 48px;
  text-align: start;
}

.loria-contact-page__head {
  margin: 8px 0 36px;
}

.loria-contact-page__title {
  margin: 0 0 8px;
  font-size: 36px;
  font-weight: 600;
}

.loria-contact-page__lede {
  margin: 0;
  color: var(--loria-muted, #6f6a64);
}

.loria-contact-page__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 32px;
}

.loria-contact-page__field {
  margin: 0;
}

.loria-contact-page__field label {
  display: block;
  margin: 0 0 8px;
  font-size: 14px;
}

.loria-contact-page__field input {
  width: 100%;
  min-height: 44px;
  border: 1px solid #d9d2cb;
  border-radius: 0;
  background: #fff;
  padding: 8px 12px;
}

.loria-contact-page__submit {
  display: block;
  width: calc(50% - 16px);
  margin: 24px 0 0;
  margin-inline-end: auto;
  min-height: 48px;
}

.loria-contact-page__more {
  background: #f3f1ee;
  padding: 36px 0;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

.loria-contact-page__more-title,
.loria-contact-page__more-items {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
  box-sizing: border-box;
}

.loria-contact-page__more-title {
  margin-bottom: 20px;
  text-align: start;
  font-weight: 600;
}

.loria-contact-page__more-items {
  display: flex;
  justify-content: flex-start;
  gap: 48px;
}

.loria-contact-page__more-item {
  display: flex;
  align-items: center;
  gap: 12px;
  color: inherit;
  text-decoration: none;
}

.loria-contact-page__more-item span span {
  display: block;
  font-size: 13px;
}

.loria-contact-page__more-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #e5dfd6;
  flex-shrink: 0;
}

/* Gift cards, accounts, editorial, thank-you */
.loria-gift-card-form {
  display: grid;
  gap: 16px;
  margin-top: 8px;
}

.loria-gift-card-form__intro {
  margin: 0;
  color: var(--loria-muted, #6f6a64);
}

.loria-gift-card-form__amounts {
  border: 0;
  padding: 0;
  margin: 0;
}

.loria-gift-card-form__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.loria-gift-card-form__chip {
  display: inline-flex;
  min-width: 88px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  border: 1px solid #d9d2cb;
  cursor: pointer;
}

.loria-gift-card-form__chip input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.loria-gift-card-form__chip:has(input:checked),
.loria-gift-card-form__chip.is-selected {
  border-color: #4e4d4d;
  background: #f4f1ec;
}

.loria-gift-card-form__field label,
.loria-gift-card-form__custom label {
  display: block;
  margin-bottom: 6px;
}

.loria-gift-card-form__field input,
.loria-gift-card-form__field textarea,
.loria-gift-card-form__custom input {
  width: 100%;
  min-height: 44px;
  border: 1px solid #d9d2cb;
  border-radius: 0;
  padding: 8px 12px;
}

.loria-gift-card-redeem {
  margin-top: 16px;
}

.woocommerce-gift-cards,
.woocommerce-gift-cards-form,
.wc-gift-cards-form {
  font-family: inherit;
}

.loria-gift-cards,
.loria-thankyou {
  max-width: 920px;
  margin: 0 auto 48px;
}

.loria-thankyou__title {
  margin: 0 0 8px;
  font-size: 36px;
  font-weight: 500;
}

.loria-thankyou__lede {
  margin: 0 0 28px;
  color: var(--loria-muted, #6f6a64);
}

.loria-thankyou__meta {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 16px;
  list-style: none;
  padding: 0;
  margin: 0 0 32px;
}

.loria-thankyou__cta {
  margin-top: 32px;
}

.loria-account-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  border: 1px solid #e8e4df;
}

.loria-account-nav li a {
  display: block;
  padding: 12px 16px;
  border-bottom: 1px solid #e8e4df;
  color: inherit;
  text-decoration: none;
}

.loria-account-nav li.is-active a,
.loria-account-nav li.is-active a:hover {
  background: #f4f1ec;
}

.loria-login h2,
.loria-register h2 {
  margin: 0 0 20px;
  font-size: 28px;
  font-weight: 500;
}

.loria-login .form-row input,
.loria-register .form-row input {
  width: 100%;
  min-height: 44px;
  border: 1px solid #d9d2cb;
  border-radius: 0;
}

.loria-about,
.loria-legal {
  max-width: 820px;
  margin: 0 auto 64px;
}

.loria-about__title,
.loria-legal__title {
  margin: 0 0 24px;
  font-size: 36px;
  font-weight: 500;
}

.loria-404 {
  padding: 64px 0 80px;
  text-align: center;
}

.loria-404__actions {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}

.loria-contact-page .wpcf7-form .loria-contact-page__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 32px;
}

.loria-contact-page .wpcf7-form input,
.loria-contact-page .wpcf7-form textarea {
  width: 100%;
  min-height: 44px;
  border: 1px solid #d9d2cb;
  border-radius: 0;
}

.loria-contact-page .wpcf7-submit,
.loria-contact-page .wpcf7-form .loria-contact-page__submit {
  display: block;
  width: calc(50% - 16px);
  margin: 24px 0 0 auto;
  min-height: 48px;
  background: #4e4d4d;
  color: #fff;
  border: 0;
}

.yith-wcwl-form .wishlist_table,
.woocommerce-page table.wishlist_table {
  width: 100%;
  border-collapse: collapse;
}

.wishlist_table td.product-thumbnail img {
  width: 88px;
  height: 88px;
  object-fit: cover;
  background: #f3f1ee;
}

.wishlist_table .product-add-to-cart .button {
  min-height: 44px;
  background: #4e4d4d !important;
  color: #fff !important;
}

@media (max-width: 768px) {
  .loria-contact-page__grid,
  .loria-contact-page .wpcf7-form .loria-contact-page__grid,
  .loria-gift-card-form__chips {
    grid-template-columns: 1fr;
  }

  .loria-contact-page__submit,
  .loria-contact-page .wpcf7-submit {
    width: 100%;
  }

  .loria-thankyou__title,
  .loria-about__title,
  .loria-contact-page__title {
    font-size: 28px;
  }
}

@media (max-width: 390px) {
  .loria-home-hero__title {
    font-size: 26px;
  }

  .loria-gift-card-form__chip {
    min-width: calc(50% - 8px);
  }
}

