/*
Theme Name: La Mujer
Theme URI: https://example.com
Author: SKYADS CO.
Version: 1.2.186
Text Domain: lamujer
Description: Motyw WordPress + WooCommerce dla marki La Mujer.
*/


@font-face {
  font-family: 'Kalnia';
  src: url('assets/fonts/Kalnia-VariableFont_wdth,wght.woff2') format('woff2-variations');
  font-style: normal;
  font-weight: 100 700;
  font-stretch: 100% 125%;
  font-display: swap;
}

:root {
  --bg-color: #fcfbfd;
  --text-color: #111111;
  --lm-heading-color: #4a454b;
  --muted-text: rgba(17,17,17,0.74);
  --accent: #712289;
  --accent-dark: #4E0F58;
  --accent-soft: #d8b9e1;
  --line: rgba(78, 15, 88, 0.10);
  --font-serif: 'Kalnia', Georgia, serif;
  --font-sans: 'DM Sans', sans-serif;
  --grid-gap: 24px;
  --page-padding: 4vw;
  --container: min(1400px, calc(100% - 40px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--font-sans);
  color: var(--text-color);
  overflow-x: hidden;
  position: relative;
  background:
    radial-gradient(circle at 68% 28%, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.56) 18%, rgba(255,255,255,0) 40%),
    radial-gradient(circle at 35% 38%, rgba(113,34,137,0.035) 0%, rgba(113,34,137,0.015) 24%, rgba(113,34,137,0) 50%),
    radial-gradient(circle at 14% 84%, rgba(255,255,255,0.86) 0%, rgba(255,255,255,0.22) 16%, rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #fcfbfd 0%, #faf8fc 18%, #f9f6fb 38%, #ffffff 56%, #f8f4fa 76%, #fbf9fc 100%);
  background-attachment: fixed;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(115deg, rgba(255,255,255,0.42) 0%, rgba(255,255,255,0.08) 22%, rgba(255,255,255,0) 42%),
    radial-gradient(circle at 71% 31%, rgba(255,255,255,0.68) 0%, rgba(255,255,255,0.14) 18%, rgba(255,255,255,0) 38%);
  mix-blend-mode: screen;
  opacity: 0.95;
  z-index: 0;
}
body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: 0.035;
  z-index: 0;
  background-image:
    radial-gradient(rgba(255,255,255,0.9) 0.7px, transparent 0.8px),
    radial-gradient(rgba(113,34,137,0.12) 0.6px, transparent 0.7px);
  background-size: 3px 3px, 4px 4px;
  background-position: 0 0, 1px 1px;
  filter: blur(0.2px);
}
img { display:block; max-width:100%; }
a { color: inherit; }
button, input, textarea, select { font: inherit; }
.site-shell, .layout-grid, .lm-product-shell, .lm-archive-shell {
  position: relative;
  z-index: 1;
}
.layout-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: var(--grid-gap);
  padding: var(--page-padding);
  width: 100%;
  max-width: 1800px;
  margin: 0 auto;
}
.lm-site-header {
  width: var(--container);
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 22px 20px 18px;
  border-bottom: 1px solid rgba(255,255,255,0.34);
  backdrop-filter: blur(8px);
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(252,251,253,0.72);
}
.logo {
  font-family: var(--font-serif);
  font-size: 2rem;
  color: var(--accent-dark);
  letter-spacing: -0.03em;
  text-decoration: none;
}
.lm-site-header nav {
  display: flex;
  gap: 3vw;
}
.lm-site-header nav a, .lm-shop-actions a {
  text-decoration: none;
  color: var(--accent-dark);
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
  position: relative;
}
.lm-site-header nav a::after, .lm-shop-actions a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 0;
  height: 1px;
  background: var(--accent);
  transition: width .3s ease;
}
.lm-site-header nav a:hover::after, .lm-shop-actions a:hover::after { width: 100%; }
.meta-data {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(17,17,17,0.7);
  display: flex;
  align-items: center;
  gap: 12px;
}
.meta-data span {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--accent);
  display: inline-block;
}

.hero-slider, .support-section, .meditation-section, .newsletter-section, .footer-section, .bestsellers-section, .categories-section, .lm-editor-section {
  grid-column: 1 / -1;
}
.hero-slider {
  position: relative;
  min-height: 78vh;
  border-radius: 34px;
  overflow: hidden;
  margin-bottom: 4vh;
  box-shadow: 0 24px 70px rgba(78,15,88,0.08);
  border: 1px solid rgba(255,255,255,0.44);
}
.hero-slides, .hero-slide { position:absolute; inset:0; }
.hero-slide {
  opacity: 0;
  transition: opacity 0.8s ease;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transform: scale(1.02);
}
.hero-slide.active { opacity:1; }
.hero-slide::before {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(28,17,34,0.58) 0%, rgba(46,29,56,0.46) 26%, rgba(70,48,81,0.20) 54%, rgba(255,255,255,0.06) 100%),
    linear-gradient(180deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0) 24%, rgba(0,0,0,0.08) 100%);
}
.hero-slider-content {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  min-height: 78vh;
  padding: clamp(32px, 5vw, 72px);
  width: 100%;
}
.hero-copy { max-width: 620px; color:white; }
.system-label, .support-label, .meditation-label, .newsletter-label, .footer-label, .bestsellers-kicker, .categories-kicker, .lm-product-kicker, .lm-section-heading span {
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:700;
}
.system-label { color: rgba(255,255,255,0.86); margin-bottom: 2.2vh; }
.system-label::before, .support-label::before, .meditation-label::before, .newsletter-label::before, .footer-label::before, .bestsellers-kicker::before, .categories-kicker::before, .lm-product-kicker::before, .lm-section-heading span::before {
  content:"";
  width:20px; height:1px; display:inline-block;
}
.system-label::before { background: rgba(255,255,255,0.7); }
.support-label,.meditation-label,.newsletter-label,.footer-label,.bestsellers-kicker,.categories-kicker,.lm-product-kicker,.lm-section-heading span { color: var(--accent); }
.support-label::before,.meditation-label::before,.newsletter-label::before,.footer-label::before,.bestsellers-kicker::before,.categories-kicker::before,.lm-product-kicker::before,.lm-section-heading span::before { background: var(--accent); }

.hero-title, .bestsellers-heading, .support-content h2, .meditation-content h2, .newsletter-title, .category-visual-title, .lm-product-title, .lm-shop-title, .lm-taxonomy-title {
  font-family: var(--font-serif);
  font-weight: 300;
  letter-spacing: -0.04em;
}
.hero-title {
  font-size: clamp(3rem, 5.6vw, 6.3rem);
  line-height: .98;
  color: white;
  margin-bottom: 3vh;
  max-width: 9ch;
  text-shadow: 0 10px 30px rgba(0,0,0,0.15);
}
.hero-title .highlight { color:#f4defb; font-style:italic; }
.hero-desc {
  font-size:1rem;
  line-height:1.7;
  color: rgba(255,255,255,0.90);
  max-width:560px;
  margin-bottom:4vh;
  white-space:pre-line;
}
.action-area {
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}
.btn, .single_add_to_cart_button, .wc-forward {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:16px 30px;
  border-radius:999px;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.82rem;
  font-weight:700;
  transition:.3s ease;
  border:none;
  cursor:pointer;
}
.btn-primary {
  background: linear-gradient(135deg, rgba(255,255,255,0.96) 0%, rgba(244,224,251,0.98) 100%);
  color: var(--accent-dark);
  border: 1px solid rgba(255,255,255,0.5);
  box-shadow: 0 14px 40px rgba(0,0,0,0.12);
}
.btn-secondary {
  background: rgba(255,255,255,0.12);
  color: white;
  border: 1px solid rgba(255,255,255,0.28);
  backdrop-filter: blur(10px);
}
.hero-slider-ui {
  position:absolute;
  inset:auto 0 clamp(24px, 3vw, 40px) 0;
  height:52px;
  z-index:3;
  pointer-events:none;
}
.hero-dots {
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  display:flex;
  align-items:center;
  gap:10px;
  pointer-events:auto;
}
.hero-dot {
  width:10px;height:10px;border-radius:50%;
  border:1px solid rgba(255,255,255,0.55);
  background:rgba(255,255,255,0.18);
  cursor:pointer;
}
.hero-dot.active { width:34px;border-radius:999px;background:white;border-color:white; }
.hero-arrows {
  position:absolute;right:clamp(24px, 4vw, 40px);top:50%;transform:translateY(-50%);
  display:flex;gap:10px;pointer-events:auto;
}
.hero-arrow {
  width:52px;height:52px;border-radius:50%;
  border:1px solid rgba(255,255,255,0.34);
  background:rgba(255,255,255,0.12);
  color:white;font-size:1.2rem;cursor:pointer;backdrop-filter:blur(10px);
}
.support-section,.meditation-section,.newsletter-section,.footer-section { padding-top: 2vh; padding-bottom: 10vh; }
.support-line,.meditation-line,.newsletter-line,.footer-line,.bestsellers-topline,.categories-topline,.lm-section-heading {
  width:100%;
}
.support-line,.meditation-line,.newsletter-line,.footer-line,.bestsellers-topline,.categories-topline {
  height:1px; background: rgba(215,205,220,0.45); margin-bottom: 3.5rem;
}
.support-grid,.meditation-grid,.newsletter-grid,.categories-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:start; }
.categories-grid, .newsletter-grid { align-items:center; }
.support-image,.meditation-image,.newsletter-image {
  width:100%; height:560px; border-radius:28px; overflow:hidden;
  box-shadow: 0 24px 60px rgba(78,15,88,0.10);
  background: rgba(255,255,255,0.42); border: 1px solid rgba(255,255,255,0.44);
}
.support-image img,.meditation-image img,.newsletter-image img { width:100%; height:100%; object-fit:cover; }
.support-content h2,.meditation-content h2,.newsletter-title {
  font-size: clamp(1.8rem, 2.8vw, 3.1rem);
  line-height:1.05; margin-bottom:2rem; max-width:16ch;
}
.support-content p,.meditation-content p,.newsletter-copy p, .entry-content p, .entry-content li {
  font-size:1.02rem; line-height:1.95; color:#111111;
}
.bestsellers-section, .categories-section {
  width:100vw; margin-left: calc(50% - 50vw);
}
.bestsellers-inner { position:relative; width:100%; padding:0 3vw; }
.bestsellers-heading-wrap { text-align:center; margin-bottom:1rem; }
.bestsellers-heading {
  font-size: clamp(3rem, 6vw, 6.4rem);
  line-height: .95;
  color: var(--lm-heading-color);
}
.bestsellers-heading span { color: rgba(78, 15, 88, 0.50); }
.bestsellers-arc-shell { position:relative; min-height:520px; overflow:hidden; }
.bestsellers-arc-lines { position:absolute; inset:0; width:100%; height:100%; z-index:1; pointer-events:none; opacity:.55; }
.bestsellers-arc-lines path, .bestsellers-arc-lines line { fill:none; stroke: rgba(214,198,221,0.62); stroke-width:1.3px; }
.bestsellers-scroller {
  position:relative; z-index:2; display:flex; align-items:flex-start; gap:2.2vw;
  overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; padding: 1rem 3vw 1.5rem; cursor:grab;
}
.bestsellers-scroller::-webkit-scrollbar, .lm-related-carousel::-webkit-scrollbar { display:none; }
.arc-card {
  --scale: .8; --offsetY: -70px;
  flex: 0 0 18%; min-width:220px; scroll-snap-align:center;
  display:flex; flex-direction:column; align-items:center;
  transform: translateY(var(--offsetY)) scale(var(--scale));
  transition: transform .28s ease, opacity .28s ease;
}
.arc-card.is-current { z-index:3; }
.product-card-image, .category-visual-card, .lm-related-image, .lm-gallery-main-image, .lm-archive-thumb {
  border-radius:28px;
  overflow:hidden;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.52) 0%, rgba(255,255,255,0.24) 100%),
    linear-gradient(135deg, rgba(216,185,225,0.14) 0%, rgba(113,34,137,0.05) 100%);
  border:1px solid rgba(255,255,255,0.46);
  box-shadow: 0 24px 32px rgba(78,15,88,0.07), inset 0 1px 0 rgba(255,255,255,0.42);
}
.product-card-image { width:100%; height:340px; position:relative; }
.product-card-image img { width:100%; height:100%; object-fit:cover; }
.best-meta { text-align:center; margin-top:1rem; }
.best-name {
  font-family: var(--font-serif); font-size: clamp(2rem, 2.4vw, 3rem);
  line-height:1; font-style:italic; color: rgba(17,17,17,0.72); margin-bottom:.55rem;
}
.arc-card.is-current .best-name {
  color:white; background:rgba(162, 97, 183, 0.58); display:inline-block; padding:.1em .14em;
}
.best-specs, .lm-shop-meta {
  display:flex; justify-content:center; gap:14px; font-size:.72rem;
  text-transform:uppercase; letter-spacing:.14em; color: rgba(17,17,17,0.48); flex-wrap:wrap;
}
.bestsellers-bottom { margin-top:.3rem; display:flex; justify-content:space-between; align-items:flex-end; gap:20px; }
.bestsellers-note { max-width:520px; font-size:.98rem; line-height:1.7; color: rgba(17,17,17,0.66); }
.scroll-track { width:100px;height:1px;background-color: rgba(78,15,88,0.14); position:relative; }
.scroll-thumb { position:absolute;top:-2px;left:0;width:30px;height:5px;background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%); border-radius:10px; }
.categories-inner { width:100%; padding:0 5vw; }
.categories-left, .categories-right, .newsletter-copy, .newsletter-image { width:100%; }
.categories-left { align-self:center; }
.category-visual { display:flex; align-items:center; min-height:100%; }
.newsletter-image { display:flex; align-items:center; justify-content:center; }
.category-row {
  display:grid; grid-template-columns:48px 1fr; align-items:center; gap:14px; min-height:92px;
  text-decoration:none; border-top:1px solid rgba(17,17,17,0.10); color:#2b2b2b;
}
.category-row:last-child { border-bottom:1px solid rgba(17,17,17,0.10); }
.category-arrow { font-size:1.8rem; color:transparent; }
.category-name {
  font-family: var(--font-serif);
  font-size: clamp(1.2rem, 2.25vw, 2.25rem);
  line-height: 1.05;
  font-weight: 300;
  font-style: italic;
  letter-spacing: -.03em;
  color: rgba(17,17,17,0.72);
  max-width: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.category-row.is-active .category-arrow, .category-row:hover .category-arrow { color: rgba(113,34,137,0.52); transform: translateX(4px); }
.category-row.is-active .category-name, .category-row:hover .category-name { color: rgba(113,34,137,0.62); }
.category-visual-card { width:100%; min-height:760px; position:relative; display:flex; flex-direction:column; justify-content:flex-end; }
.category-visual-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.category-visual-badge {
  position:absolute; top:22px; right:22px; font-size:.75rem; letter-spacing:.14em; text-transform:uppercase;
  color: rgba(78,15,88,0.72); padding:10px 14px; border-radius:999px; background: rgba(255,255,255,0.72); z-index:3;
}
.category-visual-overlay {
  position:relative; z-index:2; margin-top:auto; padding:34px 30px 30px;
  background: linear-gradient(180deg, rgba(30,14,34,0) 0%, rgba(30,14,34,0.42) 42%, rgba(30,14,34,0.72) 100%);
  color:white;
}
.category-visual-title { font-size: clamp(2rem, 3vw, 3.5rem); line-height:.95; margin-bottom:12px; }
.category-visual-text { font-size:.96rem; line-height:1.75; color: rgba(255,255,255,0.86); max-width:90%; }

.categories-mobile-carousel { display:none; }
.categories-mobile-slides { position:relative; }
.categories-mobile-slide {
  display:none;
  position:relative;
  border-radius:28px;
  overflow:hidden;
  box-shadow: 0 20px 32px rgba(78,15,88,0.08);
  color:#fff;
  text-decoration:none;
}
.categories-mobile-slide.is-active { display:block; }
.categories-mobile-slide img {
  display:block;
  width:100%;
  aspect-ratio: 1 / 1.14;
  object-fit:cover;
}
.categories-mobile-slide::after {
  content:'';
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(20,12,24,0.02) 0%, rgba(20,12,24,0.10) 38%, rgba(20,12,24,0.58) 72%, rgba(20,12,24,0.84) 100%);
  z-index:1;
}
.categories-mobile-overlay {
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:2;
  padding:24px 22px 22px;
}
.categories-mobile-title {
  margin:0 0 8px;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 7vw, 2.4rem);
  line-height:.95;
  font-weight:400;
  font-style:italic;
  color:#fff;
}
.categories-mobile-text {
  font-size:.95rem;
  line-height:1.55;
  color: rgba(255,255,255,0.92);
  max-width:92%;
}
.categories-mobile-dots {
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:16px;
}
.categories-mobile-dot {
  width:9px;
  height:9px;
  border-radius:50%;
  border:none;
  background: rgba(113,34,137,0.18);
  padding:0;
  cursor:pointer;
}
.categories-mobile-dot.is-active { background: rgba(113,34,137,0.72); }

.footer-grid { display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr; gap:32px; }
.footer-col h4 { font-size:.9rem; text-transform:uppercase; letter-spacing:.12em; color: var(--accent-dark); margin-bottom:18px; }
.footer-col ul { list-style:none; padding:0; margin:0; }
.footer-col li { margin-bottom:10px; }
.footer-brand p, .footer-col a, .footer-col li, .footer-bottom { color: rgba(17,17,17,0.72); line-height:1.8; font-size:.96rem; text-decoration:none; }
.footer-bottom { margin-top:36px; padding-top:18px; border-top:1px solid rgba(17,17,17,0.10); display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }

/* Product page */
.lm-product-page, .lm-archive-page { padding: 26px 0 80px; position:relative; z-index:1; }
.lm-product-shell, .lm-archive-shell { width: var(--container); margin:0 auto; }
.lm-product-top {
  display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:48px; align-items:start;
}
.lm-product-gallery-sticky, .lm-product-summary-sticky { position:sticky; top:120px; }
.lm-gallery-main-image img { width:100%; height:auto; }
.lm-gallery-thumbs { display:flex; gap:12px; margin-top:16px; flex-wrap:wrap; }
.lm-thumb { width:88px;height:88px;padding:0;border:1px solid rgba(17,17,17,0.10);border-radius:18px;background:#fff;overflow:hidden;cursor:pointer; }
.lm-thumb img { width:100%; height:100%; object-fit:cover; }
.lm-thumb.is-active, .lm-option-card.is-selected, .lm-variant-tile.is-current { border-color: var(--accent); box-shadow: 0 0 0 2px rgba(113,34,137,0.08); }
.lm-product-kicker { margin-bottom:14px; }
.lm-product-title { font-size: clamp(2.2rem, 4vw, 4.3rem); line-height:.95; margin:0 0 18px; }
.lm-product-price { font-size:1.3rem; color: var(--accent-dark); margin-bottom:20px; }
.lm-product-short-description { font-size:1rem; line-height:1.85; color: rgba(17,17,17,0.84); margin-bottom:28px; }
.lm-product-block { padding-top:22px; margin-top:22px; border-top:1px solid var(--line); }
.lm-product-block-title { font-size:.84rem; text-transform:uppercase; letter-spacing:.12em; color: var(--accent-dark); font-weight:700; margin-bottom:14px; }
.lm-variant-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.lm-variant-tile {
  display:grid; grid-template-columns:52px 1fr; gap:12px; align-items:center; padding:10px;
  border:1px solid rgba(17,17,17,0.10); border-radius:18px; background:rgba(255,255,255,0.78); text-decoration:none;
}
.lm-variant-thumb img { width:52px;height:52px;border-radius:12px;object-fit:cover; }
.lm-option-boxes { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.lm-option-card { position:relative; display:block; border:1px solid rgba(17,17,17,0.10); border-radius:22px; padding:18px; cursor:pointer; background:rgba(255,255,255,0.82); }
.lm-option-card input { position:absolute; opacity:0; pointer-events:none; }
.lm-option-card-title { display:block; font-weight:700; margin-bottom:8px; }
.lm-option-card-text { display:block; font-size:.93rem; line-height:1.6; color: rgba(17,17,17,0.68); }
.lm-cart-row { display:flex; gap:14px; align-items:center; margin-top:18px; flex-wrap:wrap; }
.lm-add-to-cart.button.alt, .single_add_to_cart_button { min-height:54px; background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%); color:white; }
.quantity .qty { min-height:54px; border-radius:999px; border:1px solid rgba(17,17,17,0.12); padding:0 16px; width:90px; }
.lm-product-description-full, .lm-related-products-section { margin-top:72px; }
.lm-section-heading { margin-bottom:22px; padding-top:18px; border-top:1px solid var(--line); }
.lm-description-content { width:100%; max-width:100%; font-size:1rem; line-height:1.95; color:#111; }
.lm-related-carousel { display:flex; gap:20px; overflow-x:auto; padding-bottom:10px; scrollbar-width:thin; }
.lm-related-card { flex:0 0 280px; }
.lm-related-image img { width:100%; height:340px; object-fit:cover; }
.lm-related-meta h3 { font-size:1rem; font-weight:600; margin:14px 0 8px; }
.lm-related-meta h3 a { text-decoration:none; }
.lm-related-price { color: var(--accent-dark); }

/* Archive */
.lm-shop-header {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:end;
  margin-bottom:32px;
}
.lm-shop-title, .lm-taxonomy-title { font-size: clamp(2.4rem, 5vw, 4.8rem); line-height:.95; margin:0 0 12px; }
.lm-shop-description, .term-description {
  font-size:1rem; line-height:1.9; color: rgba(17,17,17,0.72); max-width:820px;
}
.lm-shop-actions { display:flex; gap:18px; flex-wrap:wrap; justify-content:flex-end; }
.lm-archive-toolbar {
  display:flex; justify-content:space-between; gap:20px; align-items:center;
  padding:18px 0; border-top:1px solid rgba(17,17,17,0.10); border-bottom:1px solid rgba(17,17,17,0.10); margin-bottom:24px;
}
.woocommerce-ordering select {
  min-height:46px; border-radius:999px; border:1px solid rgba(17,17,17,0.10); padding:0 16px; background:white;
}
.lm-results-count { color: rgba(17,17,17,0.62); font-size:.95rem; }
.lm-archive-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.lm-product-card {
  background: rgba(255,255,255,0.56);
  border:1px solid rgba(255,255,255,0.46);
  box-shadow: 0 20px 32px rgba(78,15,88,0.07);
  border-radius:28px;
  overflow:hidden;
}
.lm-archive-thumb { display:block; border-radius:0; box-shadow:none; border:none; background:none; }
.lm-archive-thumb img { width:100%; aspect-ratio:1 / 1; height:auto; object-fit:cover; display:block; }
.lm-card-body { padding:20px; }
.lm-card-title { margin:0 0 10px; font-size:1.2rem; font-weight:600; }
.lm-card-title a { text-decoration:none; }
.lm-card-excerpt { color: rgba(17,17,17,0.68); line-height:1.7; margin-bottom:14px; }
.lm-card-bottom { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.lm-card-price { color: var(--accent-dark); font-weight:700; }
.lm-pill-link {
  display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:0 18px;
  border-radius:999px; border:1px solid rgba(17,17,17,0.10); text-decoration:none;
}
.woocommerce-pagination ul.page-numbers {
  display:flex; gap:10px; justify-content:center; list-style:none; padding:0; margin:36px 0 0;
}
.woocommerce-pagination a, .woocommerce-pagination span {
  width:44px; height:44px; display:flex; align-items:center; justify-content:center;
  border-radius:50%; text-decoration:none; border:1px solid rgba(17,17,17,0.10); background:white;
}
.woocommerce-pagination .current { background: var(--accent); color:white; border-color:var(--accent); }

/* content */
.lm-editor-section { padding-bottom:6vh; }
.lm-editor-content { max-width:980px; margin:0 auto; font-size:1rem; line-height:1.9; }
.entry-content h2, .entry-content h3, .entry-content h4 { font-family:var(--font-serif); margin:0 0 1rem; }
.entry-content p, .entry-content ul, .entry-content ol { margin-bottom:1rem; }

/* responsive */
@media (max-width: 1100px) {
  .categories-grid,.support-grid,.meditation-grid,.newsletter-grid,.footer-grid { grid-template-columns:1fr; }
  .category-visual-card { min-height:520px; }
  .lm-archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 980px) {
  .lm-product-top { grid-template-columns:1fr; gap:28px; }
  .lm-product-gallery-sticky,.lm-product-summary-sticky { position:static; }
  .lm-option-boxes,.lm-variant-grid { grid-template-columns:1fr; }
}
@media (max-width: 768px) {
  .lm-site-header { width: calc(100% - 24px); padding:18px 12px; gap:16px; flex-wrap:wrap; }
  .lm-site-header nav { gap:18px; flex-wrap:wrap; }
  .layout-grid { display:flex; flex-direction:column; min-height:auto; }
  .hero-slider, .hero-slider-content { min-height:76vh; }
  .hero-slider { border-radius:24px; }
  .hero-slider-content { align-items:flex-end; padding:24px; }
  .hero-title { font-size: clamp(2.4rem, 10vw, 3.8rem); max-width:11ch; }
  .support-section,.meditation-section,.newsletter-section,.footer-section { padding-bottom:5vh; }
  .support-image,.meditation-image,.newsletter-image { height:auto; aspect-ratio:4 / 4.8; }
  .bestsellers-arc-lines { display:none; }
  .bestsellers-scroller { gap:18px; padding:1rem var(--page-padding) 1.5rem; }
  .arc-card { flex:0 0 78vw; min-width:78vw; transform:none !important; }
  .product-card-image { height:280px; }
  .bestsellers-bottom { flex-direction:column; align-items:flex-start; padding:0 var(--page-padding); }
  .categories-grid { display:none; }
  .categories-mobile-carousel { display:block; margin-top:22px; }
  .category-arrow { font-size:1.3rem; }
  .categories-mobile-overlay { padding:20px 18px 18px; }
  .categories-mobile-text { font-size:.9rem; line-height:1.5; }
  .lm-archive-grid { grid-template-columns:1fr; }
  .lm-shop-header, .lm-archive-toolbar { grid-template-columns:1fr; display:grid; align-items:start; }
}

/* ===== product page updates v3 ===== */
.lm-short-description-wrap { margin-bottom: 24px; }
.lm-product-short-description.is-collapsed {
  max-height: 108px;
  overflow: hidden;
  position: relative;
}
.lm-product-short-description.is-collapsed::after {
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:48px;
  background:linear-gradient(180deg, rgba(252,251,253,0) 0%, rgba(252,251,253,1) 100%);
}
.lm-short-toggle {
  margin-top: 10px;
  border: 0;
  background: transparent;
  color: var(--accent-dark);
  font-weight: 700;
  letter-spacing: .02em;
  cursor: pointer;
  padding: 0;
}
.lm-variant-mini-grid {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:flex-start;
}
.lm-variant-mini {
  width:64px;
  height:64px;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(17,17,17,0.10);
  background:#fff;
  display:block;
  box-shadow: 0 6px 18px rgba(78,15,88,0.05);
}
.lm-variant-mini img { width:100%; height:100%; object-fit:cover; display:block; }
.lm-variant-preview-box {
  display:none;
  position:fixed;
  left:var(--lm-preview-left, 24px);
  top:var(--lm-preview-top, 24px);
  width:var(--lm-preview-size, 240px);
  z-index:999;
  padding:12px;
  border:1px solid rgba(17,17,17,0.10);
  border-radius:24px;
  background:rgba(255,255,255,0.96);
  box-shadow:0 18px 44px rgba(78,15,88,0.16);
  pointer-events:none;
}
.lm-variant-preview-box.is-visible { display:block; }
.lm-variant-preview-media img {
  width:100%;
  aspect-ratio:1 / 1;
  height:auto;
  object-fit:cover;
  border-radius:18px;
  display:block;
}
.lm-variant-preview-title {
  display:block;
  padding:14px 4px 4px;
  font-size:.98rem;
  line-height:1.4;
  font-weight:700;
  color:#111;
  text-align:left;
}
@media (max-width: 980px) {
  .lm-variant-preview-box { display:none !important; }
}

.lm-product-page .variations {
  width:100%;
  border-collapse:separate;
  border-spacing:0 12px;
  margin-bottom: 10px;
}
.lm-product-page .variations th,
.lm-product-page .variations td {
  display:block;
  width:100%;
  padding:0;
}
.lm-product-page .variations .label label {
  display:block;
  margin-bottom:8px;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:var(--accent-dark);
  font-weight:700;
}
.lm-product-page .variations select {
  width:100%;
  min-height:54px;
  border-radius:18px;
  border:1px solid rgba(17,17,17,0.10);
  padding:0 16px;
  background:#fff;
  font-size:1rem;
}
.lm-product-page .single_variation_wrap {
  display:flex;
  flex-direction:column;
  gap:14px;
}
.lm-product-page .woocommerce-variation {
  color: rgba(17,17,17,0.76);
  line-height:1.7;
}
.lm-product-page .woocommerce-variation-price {
  font-size:1.2rem;
  color:var(--accent-dark);
  font-weight:700;
}
.lm-product-page .woocommerce-variation-add-to-cart {
  display:flex;
  gap:14px;
  align-items:center;
  flex-wrap:wrap;
}
.lm-product-page .reset_variations {
  display:inline-block;
  margin-top:10px;
  color:var(--accent-dark);
  font-weight:700;
  text-decoration:none;
}
.lm-variation-reset-wrap {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-top:10px;
}



/* ===== v4 header/menu ===== */
.lm-site-header {
  width: var(--container);
  padding: 12px 20px;
}
.lm-site-header__inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:74px;
}
.lm-main-nav { min-width: 0; }
.lm-nav-panel {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  flex:1;
}
.lm-menu {
  display:flex;
  align-items:center;
  gap:3vw;
  list-style:none;
  margin:0;
  padding:0;
}
.lm-menu li { margin:0; padding:0; }
.lm-menu a,
.lm-shop-actions a {
  text-decoration:none;
  color:var(--accent-dark);
  font-size:0.85rem;
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-weight:600;
  position:relative;
}
.lm-menu a::after,
.lm-shop-actions a::after {
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:0;
  height:1px;
  background:var(--accent);
  transition:width .3s ease;
}
.lm-menu a:hover::after,
.lm-shop-actions a:hover::after { width:100%; }
.lm-menu-toggle {
  display:none;
  align-items:center;
  gap:12px;
  border:1px solid rgba(17,17,17,0.10);
  background:rgba(255,255,255,0.86);
  border-radius:999px;
  min-height:48px;
  padding:0 16px;
  cursor:pointer;
}
.lm-menu-toggle__label {
  font-size:0.75rem;
  text-transform:uppercase;
  letter-spacing:0.12em;
  font-weight:700;
  color:var(--accent-dark);
}
.lm-menu-toggle__bars {
  display:inline-flex;
  flex-direction:column;
  gap:4px;
}
.lm-menu-toggle__bars span {
  display:block;
  width:18px;
  height:2px;
  border-radius:999px;
  background:var(--accent-dark);
  transition:transform .25s ease, opacity .25s ease;
}
.lm-site-header.is-menu-open .lm-menu-toggle__bars span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.lm-site-header.is-menu-open .lm-menu-toggle__bars span:nth-child(2) { opacity: 0; }
.lm-site-header.is-menu-open .lm-menu-toggle__bars span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
.lm-header-meta { margin-left:auto; }
body.lm-menu-open { overflow:hidden; }

/* ===== v4 product ===== */
.lm-product-page .single_variation_wrap .woocommerce-variation-add-to-cart {
  display:flex !important;
  gap:14px;
  align-items:center;
  flex-wrap:wrap;
}
.lm-product-page .woocommerce-variation-add-to-cart .quantity { margin:0; }
.lm-product-page .single_variation_wrap .single_add_to_cart_button {
  min-height:54px;
  border-radius:999px;
  padding:0 28px;
}
.lm-product-page .woocommerce-variation-description p:last-child,
.lm-product-page .woocommerce-variation-price:last-child { margin-bottom:0; }
.lm-product-page .woocommerce-variation-availability { color:rgba(17,17,17,0.62); }

/* ===== v4 archive ===== */
.lm-shop-header--simple { margin-bottom: 24px; }
.lm-shop-header--simple .lm-shop-description { display:none; }
.lm-archive-description-full { margin-top:72px; }
.lm-archive-description-full .lm-description-content {
  width:100%;
  max-width:100%;
}

@media (max-width: 980px) {
  .lm-site-header {
    width: calc(100% - 24px);
    padding: 12px;
  }
  .lm-site-header__inner {
    min-height: 56px;
    gap: 12px;
  }
  .lm-menu-toggle { display:inline-flex; }
  .lm-nav-panel {
    position: fixed;
    left: 12px;
    right: 12px;
    top: 84px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
    padding: 18px;
    border-radius: 24px;
    background: rgba(252,251,253,0.98);
    border: 1px solid rgba(17,17,17,0.08);
    box-shadow: 0 24px 60px rgba(78,15,88,0.14);
    max-height: calc(100vh - 110px);
    overflow:auto;
  }
  .lm-site-header.is-menu-open .lm-nav-panel { display:flex; }
  .lm-main-nav,
  .lm-main-nav .menu-primary-container,
  .lm-main-nav .menu { width:100%; }
  .lm-menu {
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    width:100%;
  }
  .lm-menu li { width:100%; border-bottom:1px solid rgba(17,17,17,0.08); }
  .lm-menu li:last-child { border-bottom:0; }
  .lm-menu a {
    display:block;
    width:100%;
    padding:14px 0;
    font-size:0.95rem;
  }
  .lm-header-meta {
    width:100%;
    justify-content:flex-start;
    margin-left:0;
    padding-top:8px;
    border-top:1px solid rgba(17,17,17,0.08);
  }
  .lm-site-header nav { display:block; }
}

@media (max-width: 768px) {
  .hero-arrows { display:none; }
  .hero-dots { bottom: 0; }
  .lm-archive-description-full { margin-top:56px; }
}


/* ===== v5 global footer + trustmate ===== */
.lm-global-footer {
  width: var(--container);
  margin: 0 auto;
  padding-top: 2vh;
  padding-bottom: 3vh;
}

.lm-footer-shell {
  width: 100%;
}

.footer-kicker {
  display:inline-block;
  margin-bottom:10px;
  color: var(--accent);
  font-size: .74rem;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-weight: 700;
}

.lm-footer-contact-list {
  margin-bottom: 18px !important;
}

.lm-footer-socials {
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:8px;
}

.lm-social-icon {
  width:44px;
  height:44px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color: var(--accent-dark);
  text-decoration:none;
  border:1px solid rgba(17,17,17,0.10);
  background: rgba(255,255,255,0.74);
  transition: transform .2s ease, border-color .2s ease, color .2s ease;
}

.lm-social-icon:hover {
  transform: translateY(-1px);
  border-color: rgba(113,34,137,0.36);
  color: var(--accent);
}

.lm-social-icon svg {
  width:20px;
  height:20px;
  display:block;
}

.lm-trustmate-section {
  width: var(--container);
  margin: 0 auto 48px;
}

.lm-trustmate-shell {
  border-top: 1px solid rgba(17,17,17,0.10);
  padding-top: 28px;
}

.lm-trustmate-placeholder {
  min-height: 80px;
}

@media (max-width: 980px) {
  .lm-global-footer,
  .lm-trustmate-section {
    width: calc(100% - 24px);
  }
}


/* ===== v6 header tools, dropdowns, topbar ===== */
.screen-reader-text {
  position:absolute !important;
  width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.lm-topbar {
  position: sticky;
  top: 0;
  z-index: 60;
  background: var(--accent-dark);
  color: #fff;
  min-height: 42px;
}
.lm-topbar__track {
  width: var(--container);
  margin: 0 auto;
  padding: 0 20px;
  position: relative;
  min-height: 42px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.lm-topbar__item {
  position:absolute;
  opacity:0;
  transform: translateY(6px);
  transition: opacity .35s ease, transform .35s ease;
  text-align:center;
  font-size:.82rem;
  letter-spacing:.04em;
}
.lm-topbar__item.is-active { opacity:1; transform:translateY(0); }

.lm-site-header {
  top: 42px;
}
.lm-header-tools {
  display:flex;
  align-items:center;
  gap:14px;
  margin-left:auto;
}
.lm-header-shortcode > * { margin:0; }
.lm-header-icon {
  width:44px;
  height:44px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(17,17,17,0.10);
  background:rgba(255,255,255,0.78);
  text-decoration:none;
  position:relative;
}
.lm-header-icon svg { width:20px; height:20px; display:block; }
.lm-cart-count {
  position:absolute;
  top:-5px;
  right:-5px;
  min-width:20px;
  height:20px;
  border-radius:999px;
  background:var(--accent);
  color:#fff;
  font-size:.7rem;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 4px;
}
.lm-search-drawer {
  width:100%;
  max-width:var(--container);
  margin:10px auto 0;
  padding:18px;
  border-radius:22px;
  background:rgba(252,251,253,0.98);
  border:1px solid rgba(17,17,17,0.08);
  box-shadow:0 18px 40px rgba(78,15,88,0.10);
}
.lm-search-drawer form {
  display:flex;
  gap:12px;
}
.lm-search-drawer input[type="search"] {
  flex:1;
  min-height:52px;
  border-radius:999px;
  border:1px solid rgba(17,17,17,0.10);
  padding:0 18px;
  background:#fff;
}
.lm-search-drawer button {
  min-height:52px;
  border-radius:999px;
  padding:0 22px;
  border:0;
  background:linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);
  color:#fff;
  cursor:pointer;
}

.lm-menu,
.lm-menu ul {
  list-style:none !important;
}
.lm-menu > li {
  position:relative;
}
.lm-menu > li.menu-item-has-children > a {
  padding-right:18px;
}
.lm-menu > li.menu-item-has-children > a::before {
  content:"";
  position:absolute;
  right:0;
  top:50%;
  width:8px;
  height:8px;
  border-right:1.5px solid var(--accent-dark);
  border-bottom:1.5px solid var(--accent-dark);
  transform:translateY(-70%) rotate(45deg);
}
.lm-menu .sub-menu {
  position:absolute;
  top:100%;
  left:0;
  min-width:240px;
  padding:12px 0;
  margin:12px 0 0;
  border-radius:18px;
  background:rgba(252,251,253,0.98);
  border:1px solid rgba(17,17,17,0.08);
  box-shadow:0 18px 40px rgba(78,15,88,0.10);
  display:none;
  z-index:80;
}
.lm-menu .sub-menu li {
  width:100%;
  margin:0;
  border:0;
}
.lm-menu .sub-menu a {
  display:block;
  padding:10px 18px;
  font-size:.82rem;
  text-transform:none;
  letter-spacing:.02em;
}
.lm-menu li:hover > .sub-menu,
.lm-menu li:focus-within > .sub-menu {
  display:block;
}
.lm-submenu-toggle { display:none; }

/* Product frame + swatches */
.lm-gallery-main-frame {
  padding:18px;
  border-radius:30px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.52) 0%, rgba(255,255,255,0.24) 100%),
    linear-gradient(135deg, rgba(216,185,225,0.14) 0%, rgba(113,34,137,0.05) 100%);
  border:1px solid rgba(255,255,255,0.46);
  box-shadow:0 24px 32px rgba(78,15,88,0.07), inset 0 1px 0 rgba(255,255,255,0.42);
}
.lm-gallery-main-image {
  border-radius:24px;
  overflow:hidden;
  background:#fff;
}
.lm-gallery-main-image img {
  width:100%;
  height:auto;
  display:block;
}
.lm-attribute-swatches {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}
.lm-attribute-swatch {
  text-align:left;
  padding:16px 18px;
  min-height:64px;
  background:rgba(255,255,255,0.82);
}
.lm-attribute-swatch.is-selected {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(113,34,137,0.08);
}
.lm-product-page .variations select.screen-reader-text {
  clip:auto;
  clip-path: inset(50%);
}
.lm-product-page .variations select {
  position:absolute !important;
  left:-9999px !important;
}

/* Footer consistency */
.lm-global-footer .footer-grid ul {
  list-style:none;
  margin:0;
  padding:0;
}
.footer-grid li::marker { content:''; }

@media (max-width: 980px) {
  .lm-topbar__track { width: calc(100% - 24px); padding:0 12px; }
  .lm-site-header { top: 42px; }
  .lm-header-tools {
    width:100%;
    justify-content:flex-start;
    flex-wrap:wrap;
    margin-left:0;
    padding-top:8px;
    border-top:1px solid rgba(17,17,17,0.08);
  }
  .lm-menu > li.menu-item-has-children > a::before { display:none; }
  .lm-menu .sub-menu {
    position:static;
    display:none;
    min-width:0;
    margin:0 0 10px;
    padding:4px 0 8px 14px;
    background:transparent;
    border:0;
    box-shadow:none;
  }
  .lm-menu li.is-submenu-open > .sub-menu { display:block; }
  .lm-submenu-toggle {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    border-radius:999px;
    border:1px solid rgba(17,17,17,0.10);
    background:rgba(255,255,255,0.82);
    margin-left:auto;
    margin-top:-48px;
    position:relative;
    z-index:2;
  }
  .lm-menu li.is-submenu-open > .lm-submenu-toggle span[aria-hidden="true"] { transform:rotate(45deg); }
  .lm-attribute-swatches { grid-template-columns:1fr; }
}


/* v7 archive infinite scroll + stock handling */
.lm-archive-loadmore-wrap {
  width: var(--container);
  margin: 10px auto 40px;
  padding: 0 20px;
}
.lm-archive-loadmore {
  min-height: 56px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(17,17,17,0.08);
  border-radius: 999px;
  background: rgba(255,255,255,0.78);
  color: var(--accent-dark);
}
.lm-archive-loadmore.is-loading { opacity: .72; }

.lm-out-of-stock-note {
  margin-top: 16px;
  padding: 14px 18px;
  border-radius: 18px;
  background: rgba(113,34,137,0.06);
  color: var(--accent-dark);
  font-weight: 600;
}

.single_variation_wrap .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button,
.single_variation_wrap .woocommerce-variation-add-to-cart-disabled .quantity {
  display: none !important;
}


/* ===== v8 header restructure ===== */
.lm-topbar {
  position: sticky;
  top: 0;
  z-index: 80;
}
.lm-header-utility-bar {
  position: sticky;
  top: 42px;
  z-index: 79;
  background: rgba(252,251,253,0.94);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(17,17,17,0.06);
}
.lm-header-utility-bar__inner {
  width: var(--container);
  margin: 0 auto;
  padding: 8px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 46px;
}
.lm-site-header {
  top: 88px;
  padding-top: 16px;
  padding-bottom: 16px;
}
.lm-site-header__inner {
  width: 100%;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 24px;
}
.lm-nav-panel {
  display: flex;
  align-items: center;
  justify-content: center;
}
.lm-main-nav {
  width: 100%;
}
.lm-menu {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(14px, 1.9vw, 28px);
  margin: 0;
  padding: 0;
}
.lm-menu > li > a {
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  position: relative;
}
.lm-header-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}
.lm-mobile-utility {
  display: none;
}
.lm-header-shortcode--currency {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  min-height: 38px;
  border-radius: 999px;
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(113,34,137,0.14);
  box-shadow: 0 8px 20px rgba(78,15,88,0.05);
}
.lm-header-shortcode--currency select,
.lm-header-shortcode--currency .currency-switcher,
.lm-header-shortcode--currency .woocs_switcher,
.lm-header-shortcode--currency form,
.lm-header-shortcode--currency .wmc-currency-wrapper {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.lm-header-shortcode--currency select {
  min-height: 26px;
  padding: 0 24px 0 4px;
  border: 0;
  background: transparent;
  color: var(--accent-dark);
  font-weight: 700;
}
.lm-header-shortcode--lang {
  font-size: 0.92rem;
  color: var(--accent-dark);
}
.lm-header-shortcode--lang a,
.lm-header-shortcode--lang span {
  text-decoration: none;
}
.lm-search-drawer {
  margin-top: 14px;
}
.lm-site-header .logo {
  font-size: clamp(2rem, 2.6vw, 3rem);
  line-height: 0.9;
}

/* better swatches / variant boxes */
.lm-product-block + .lm-product-block {
  margin-top: 28px;
}
.lm-attribute-swatches {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.lm-attribute-swatch.lm-option-card {
  min-height: 88px;
  border-radius: 24px;
  padding: 18px 20px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.52) 0%, rgba(255,255,255,0.24) 100%),
    linear-gradient(135deg, rgba(216,185,225,0.12) 0%, rgba(113,34,137,0.05) 100%);
  border: 1px solid rgba(17,17,17,0.09);
  box-shadow: 0 14px 30px rgba(78,15,88,0.04);
}
.lm-attribute-swatch .lm-option-card-title {
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  color: #111;
}
.lm-attribute-swatch.is-selected {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(113,34,137,0.08), 0 14px 30px rgba(78,15,88,0.08);
}
.lm-variant-mini-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(74px, 74px));
  gap: 14px;
  position: relative;
}
.lm-variant-mini {
  width: 74px;
  height: 74px;
  padding: 6px;
  border-radius: 20px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.52) 0%, rgba(255,255,255,0.24) 100%),
    linear-gradient(135deg, rgba(216,185,225,0.12) 0%, rgba(113,34,137,0.05) 100%);
  border: 1px solid rgba(17,17,17,0.09);
  box-shadow: 0 12px 28px rgba(78,15,88,0.05);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.lm-variant-mini img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 14px;
}
.lm-variant-mini:hover,
.lm-variant-mini.is-current {
  transform: translateY(-2px);
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(113,34,137,0.08), 0 14px 30px rgba(78,15,88,0.08);
}
.lm-variant-preview-box {
  margin-top: 18px;
  display: none;
  grid-template-columns: 110px 1fr;
  align-items: center;
  gap: 16px;
  padding: 14px;
  border-radius: 24px;
  background: rgba(255,255,255,0.88);
  border: 1px solid rgba(17,17,17,0.08);
  box-shadow: 0 20px 40px rgba(78,15,88,0.08);
}
.lm-variant-preview-box.is-visible {
  display: grid;
}
.lm-variant-preview-media img {
  width: 110px;
  height: 110px;
  object-fit: cover;
  border-radius: 18px;
}
.lm-variant-preview-title {
  font-size: 1rem;
  line-height: 1.5;
  color: #111;
  font-weight: 600;
}

/* related products same vibe as homepage bestsellers */
.lm-related-arc-section {
  padding-top: 8px;
}
.lm-related-arc-shell {
  min-height: 480px;
}
.lm-related-scroller {
  padding: 1rem 0 1.5rem;
}
.lm-related-scroller .arc-card {
  flex: 0 0 22%;
  min-width: 240px;
}
.lm-related-scroller .product-card-image {
  height: 340px;
}
.lm-related-scroller .best-meta {
  text-align: left;
}
.lm-related-scroller .best-name {
  font-style: normal;
  font-size: clamp(1.2rem, 1.7vw, 1.8rem);
  line-height: 1.25;
  margin-bottom: 0.7rem;
}
.lm-related-scroller .best-specs {
  justify-content: flex-start;
  gap: 10px;
  letter-spacing: 0.06em;
}
.lm-related-scroller .arc-card.is-current .best-name {
  color: var(--accent-dark);
  background: transparent;
  padding: 0;
}

/* generic recommendation widget styling fallback */
.single-product .up-sells,
.single-product .related.products,
.single-product .cross-sells,
.single-product [class*="fbt"],
.single-product [class*="frequently-bought"],
.single-product [class*="recommend"] {
  width: 100%;
  margin-top: 56px;
}
.single-product [class*="fbt"] h2,
.single-product [class*="frequently-bought"] h2,
.single-product [class*="recommend"] h2,
.single-product .up-sells > h2,
.single-product .related.products > h2 {
  font-family: var(--font-serif);
  font-size: clamp(2rem, 3.2vw, 3rem);
  line-height: 1;
  margin: 0 0 24px;
}
.single-product [class*="fbt"] .products,
.single-product [class*="frequently-bought"] .products,
.single-product [class*="recommend"] .products,
.single-product .up-sells .products,
.single-product .related.products .products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.single-product [class*="fbt"] .product,
.single-product [class*="frequently-bought"] .product,
.single-product [class*="recommend"] .product,
.single-product .up-sells .product,
.single-product .related.products .product {
  padding: 20px;
  border-radius: 28px;
  background: rgba(255,255,255,0.8);
  border: 1px solid rgba(17,17,17,0.08);
  box-shadow: 0 18px 40px rgba(78,15,88,0.05);
}

/* header responsiveness */
@media (max-width: 980px) {
  .lm-header-utility-bar {
    top: 42px;
  }
  .lm-site-header {
    top: 88px;
  }
  .lm-site-header__inner {
    grid-template-columns: auto auto auto;
  }
  .lm-nav-panel {
    position: fixed;
    inset: 88px 0 0 0;
    background: rgba(252,251,253,0.98);
    backdrop-filter: blur(14px);
    padding: 20px;
    display: none;
    overflow: auto;
  }
  .lm-site-header.is-menu-open .lm-nav-panel {
    display: block;
  }
  .lm-mobile-utility {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(17,17,17,0.08);
  }
  .lm-menu {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  .lm-menu > li {
    padding: 14px 0;
    border-bottom: 1px solid rgba(17,17,17,0.08);
  }
  .lm-menu > li > a {
    display: block;
    padding-right: 40px;
  }
  .lm-header-utility-bar__inner {
    display: none;
  }
  .lm-header-actions {
    gap: 8px;
  }
  .lm-header-icon {
    width: 42px;
    height: 42px;
  }
  .lm-related-scroller .arc-card {
    flex: 0 0 78vw;
    min-width: 78vw;
  }
  .single-product [class*="fbt"] .products,
  .single-product [class*="frequently-bought"] .products,
  .single-product [class*="recommend"] .products,
  .single-product .up-sells .products,
  .single-product .related.products .products {
    grid-template-columns: 1fr;
  }
}

/* desktop utility placement overrides */
@media (min-width: 981px) {
  .lm-mobile-utility { display:none !important; }
  .lm-site-header .lm-menu-toggle { display:none; }
}


/* ===== v9 header/menu refinements ===== */
@media (min-width: 981px) {
  .lm-site-header__inner {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .lm-nav-panel {
    min-width: 0;
  }

  .lm-menu {
    gap: clamp(10px, 1.1vw, 18px);
    flex-wrap: nowrap;
  }

  .lm-menu > li {
    min-width: 0;
  }

  .lm-menu > li > a {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 52px;
    max-width: 142px;
    padding: 10px 24px 10px 14px;
    border-radius: 16px;
    line-height: 1.15;
    transition: background .22s ease, color .22s ease, box-shadow .22s ease, transform .22s ease;
    overflow: hidden;
    text-align: left;
    white-space: normal;
    word-break: break-word;
    text-wrap: balance;
  }

  .lm-menu > li.menu-item-has-children > a::before {
    right: 12px;
    top: 50%;
    transform: translateY(-58%) rotate(45deg);
  }

  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a,
  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: rgba(113,34,137,0.08);
    color: var(--accent-dark);
    box-shadow: inset 0 0 0 1px rgba(113,34,137,0.10);
  }

  .lm-menu .sub-menu {
    top: calc(100% + 8px);
    left: 0;
    margin: 0;
    min-width: 250px;
    border-radius: 20px;
    padding: 10px 0;
  }

  .lm-menu .sub-menu > li {
    position: relative;
  }

  .lm-menu .sub-menu a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 18px;
    line-height: 1.3;
    transition: background .18s ease, color .18s ease;
  }

  .lm-menu .sub-menu > li:hover > a,
  .lm-menu .sub-menu > li:focus-within > a,
  .lm-menu .sub-menu > li.current-menu-item > a,
  .lm-menu .sub-menu > li.current-menu-ancestor > a {
    background: rgba(113,34,137,0.07);
    color: var(--accent-dark);
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 42px;
    position: relative;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: "";
    position: absolute;
    right: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 1.5px solid currentColor;
    border-top: 1.5px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
    opacity: .75;
  }

  .lm-menu .sub-menu .sub-menu {
    top: 0;
    left: calc(100% + 8px);
    margin: 0;
  }
}

@media (max-width: 980px) {
  .lm-site-header__inner {
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 10px;
  }

  .lm-site-header .logo {
    order: 1;
  }

  .lm-header-actions {
    order: 2;
    justify-self: end;
    margin-right: 2px;
  }

  .lm-menu-toggle {
    order: 3;
    justify-self: end;
  }

  .lm-nav-panel {
    order: 4;
  }

  .lm-header-actions .lm-header-icon {
    width: 40px;
    height: 40px;
  }

  .lm-header-actions .lm-header-icon svg {
    width: 19px;
    height: 19px;
  }

  .lm-menu > li {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    column-gap: 10px;
    row-gap: 0;
    padding: 0;
  }

  .lm-menu > li > a {
    min-width: 0;
    padding: 16px 0;
    display: block;
    line-height: 1.25;
  }

  .lm-submenu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin: 0;
    position: static;
    z-index: 1;
    justify-self: end;
    align-self: center;
  }

  .lm-submenu-toggle span[aria-hidden="true"] {
    font-size: 1.1rem;
    line-height: 1;
  }

  .lm-menu li.is-submenu-open > .lm-submenu-toggle span[aria-hidden="true"] {
    transform: rotate(45deg);
    display: inline-block;
  }

  .lm-menu .sub-menu {
    grid-column: 1 / -1;
    padding: 0 0 10px 14px;
    margin: 0;
  }

  .lm-menu .sub-menu li {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    column-gap: 8px;
  }

  .lm-menu .sub-menu a {
    padding: 10px 0;
    min-width: 0;
  }

  .lm-menu .sub-menu .sub-menu {
    padding-left: 12px;
  }

  .lm-menu > li > a::before {
    display: none !important;
  }

  .lm-menu-toggle {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    border: 1px solid rgba(17,17,17,0.10);
    background: rgba(255,255,255,0.82);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
  }

  .lm-menu-toggle__label {
    display: none;
  }

  .lm-menu-toggle__bars {
    display: inline-flex;
    flex-direction: column;
    gap: 4px;
  }

  .lm-menu-toggle__bars span {
    width: 16px;
    height: 1.5px;
    background: var(--accent-dark);
    display: block;
    border-radius: 2px;
  }
}

/* utility bar and dropdown polish */
.lm-header-shortcode--currency {
  min-height: 40px;
  padding: 5px 14px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,0.95) 0%, rgba(247,242,250,0.95) 100%);
  border: 1px solid rgba(113,34,137,0.14);
  box-shadow: 0 10px 22px rgba(78,15,88,0.06);
}

.lm-header-shortcode--currency select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-size: .9rem;
  line-height: 1;
  font-weight: 700;
  color: var(--accent-dark);
  padding-right: 22px;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--accent-dark) 50%),
    linear-gradient(135deg, var(--accent-dark) 50%, transparent 50%);
  background-position:
    calc(100% - 14px) 50%,
    calc(100% - 9px) 50%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

.lm-header-shortcode--lang {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
}

.lm-header-shortcode--lang a,
.lm-header-shortcode--lang span,
.lm-header-shortcode--lang .gt-current-lang,
.lm-header-shortcode--lang .glink {
  font-size: .92rem;
  font-weight: 600;
  color: #1a1a1a;
}

.lm-header-shortcode--lang .gt-current-lang,
.lm-header-shortcode--lang .glink:hover {
  color: var(--accent-dark);
}

.lm-header-utility-bar__inner {
  min-height: 42px;
}

/* menu current state alternative highlight */
.lm-menu a {
  text-decoration: none;
}

.lm-menu > li.current-menu-item > a,
.lm-menu > li.current-menu-ancestor > a {
  background: rgba(113,34,137,0.10);
  color: var(--accent-dark);
}



/* ===== v10 product popup and archive buttons ===== */
.lm-product-summary-col .lm-variant-mini-grid,
.lm-product-summary-col .lm-variant-preview-box {
  margin-bottom: 6px;
}

.lm-added-popup {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: none;
}
.lm-added-popup.is-visible {
  display: block;
}
.lm-added-popup__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(20, 12, 24, 0.42);
  backdrop-filter: blur(6px);
}
.lm-added-popup__dialog {
  position: relative;
  width: min(1180px, calc(100% - 32px));
  max-height: calc(100vh - 40px);
  overflow: auto;
  margin: 20px auto;
  padding: 26px;
  border-radius: 34px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(252,251,253,0.98) 100%),
    linear-gradient(135deg, rgba(216,185,225,0.14) 0%, rgba(113,34,137,0.05) 100%);
  border: 1px solid rgba(255,255,255,0.46);
  box-shadow: 0 32px 90px rgba(20, 12, 24, 0.18);
}
.lm-added-popup__close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(17,17,17,0.08);
  background: rgba(255,255,255,0.88);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
}
.lm-added-popup__top {
  padding-right: 56px;
  margin-bottom: 18px;
}
.lm-added-popup__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: .74rem;
  text-transform: uppercase;
  letter-spacing: .16em;
  color: var(--accent);
  font-weight: 700;
  margin-bottom: 12px;
}
.lm-added-popup__eyebrow::before {
  content: "";
  width: 20px;
  height: 1px;
  background: var(--accent);
}
.lm-added-popup__title {
  font-family: var(--font-serif);
  font-size: clamp(2rem, 3.8vw, 3.6rem);
  line-height: .95;
  font-weight: 300;
  margin: 0 0 16px;
}
.lm-added-popup__promo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(113,34,137,0.08);
  color: var(--accent-dark);
  flex-wrap: wrap;
}
.lm-added-popup__promo-label {
  font-weight: 600;
}
.lm-added-popup__promo-code {
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--accent-dark);
  color: #fff;
  font-weight: 700;
  letter-spacing: .06em;
}
.lm-added-popup__body {
  margin: 18px 0 10px;
}
.lm-added-popup__actions {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 8px;
}
body.lm-popup-open {
  overflow: hidden;
}

.lm-archive-card-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 20px;
  border-radius: 999px;
  text-decoration: none;
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: .25s ease;
}
.lm-archive-card-btn--view {
  background: rgba(255,255,255,0.84);
  color: var(--accent-dark);
  border: 1px solid rgba(17,17,17,0.10);
}
.lm-archive-card-btn--cart {
  background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);
  color: #fff;
  border: 1px solid transparent;
}
.lm-archive-card-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(78,15,88,0.08);
}

@media (max-width: 980px) {
  .lm-added-popup__dialog {
    width: calc(100% - 18px);
    margin: 9px auto;
    padding: 18px;
    border-radius: 24px;
  }
  .lm-added-popup__actions {
    justify-content: stretch;
  }
  .lm-added-popup__actions .btn {
    width: 100%;
  }
}


/* ===== v11 header, logo, topbar, search modal, footer ===== */
:root {
  --lm-topbar-height: 42px;
  --lm-utility-height: 46px;
}

.lm-topbar--marquee {
  position: sticky;
  top: 0;
  z-index: 90;
  overflow: hidden;
  background: var(--accent);
  color: #fff;
  height: 44px;
  display: flex;
  align-items: center;
}
.lm-topbar__marquee {
  display: flex;
  align-items: center;
  gap: 56px;
  min-width: max-content;
  white-space: nowrap;
  animation: lmMarquee 22s linear infinite;
  font-size: .9rem;
  letter-spacing: .04em;
  font-weight: 500;
}
.lm-topbar__marquee span::after {
  content: "•";
  margin-left: 56px;
  opacity: .6;
}
@keyframes lmMarquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.lm-header-utility-bar {
  top: var(--lm-topbar-height);
  transition: transform .28s ease, opacity .28s ease;
}
.lm-header-utility-bar.is-hidden-on-scroll {
  transform: translateY(-100%);
  opacity: 0;
  pointer-events: none;
}

.lm-site-header {
  top: calc(var(--lm-topbar-height) + var(--lm-utility-height));
  transition: transform .28s ease, opacity .28s ease, top .2s ease;
}
.lm-site-header.is-hidden-on-scroll {
  transform: translateY(-120%);
  opacity: 0;
  pointer-events: none;
}
.lm-site-header__inner {
  grid-template-columns: auto auto 1fr auto;
}
.lm-logo-image-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.lm-logo-image {
  width: auto;
  height: 72px;
  max-width: 270px;
  object-fit: contain;
  display: block;
}

.lm-nav-panel {
  justify-content: flex-start;
}
.lm-menu {
  justify-content: flex-start;
}

.lm-search-modal {
  position: fixed;
  inset: 0;
  z-index: 1300;
  display: none;
}
.lm-search-modal.is-visible {
  display: block;
}
.lm-search-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(20, 12, 24, 0.42);
  backdrop-filter: blur(8px);
}
.lm-search-modal__dialog {
  position: relative;
  width: min(880px, calc(100% - 24px));
  margin: 12vh auto 0;
  padding: 28px;
  border-radius: 34px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.94) 0%, rgba(252,251,253,0.98) 100%),
    linear-gradient(135deg, rgba(216,185,225,0.14) 0%, rgba(113,34,137,0.05) 100%);
  border: 1px solid rgba(255,255,255,0.46);
  box-shadow: 0 32px 90px rgba(20, 12, 24, 0.18);
}
.lm-search-modal__title {
  font-family: var(--font-serif);
  font-size: clamp(2rem, 3vw, 3.2rem);
  line-height: 1;
  margin: 0 0 18px;
  color: var(--accent-dark);
}
.lm-search-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(17,17,17,0.08);
  background: rgba(255,255,255,0.9);
  font-size: 1.6rem;
  cursor: pointer;
}
.lm-search-modal form {
  display: flex;
  gap: 14px;
}
.lm-search-modal input[type="search"] {
  flex: 1;
  min-height: 74px;
  border-radius: 999px;
  border: 1px solid rgba(17,17,17,0.10);
  padding: 0 28px;
  font-size: clamp(1.1rem, 2vw, 1.4rem);
  background: #fff;
}
.lm-search-modal button[type="submit"],
.lm-search-modal .search-submit {
  min-height: 74px;
  border-radius: 999px;
  padding: 0 34px;
  border: 0;
  background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}
body.lm-search-open {
  overflow: hidden;
}

.lm-global-footer .footer-label,
.lm-global-footer .footer-kicker {
  display: none;
}
.lm-footer-logo-image {
  width: auto;
  height: 74px;
  max-width: 280px;
  object-fit: contain;
}
.lm-footer-shell .footer-brand .logo {
  display: none;
}
.lm-trustmate-section,
.lm-trustmate-shell,
.lm-trustmate-placeholder {
  display: none !important;
}

@media (max-width: 980px) {
  .lm-header-utility-bar {
    display: none;
  }
  .lm-site-header {
    top: var(--lm-topbar-height);
  }
  .lm-site-header__inner {
    grid-template-columns: auto 1fr auto auto;
    gap: 8px;
  }
  .lm-logo-image {
    height: 46px;
    max-width: 150px;
  }
  .lm-header-actions {
    order: 2;
    justify-self: end;
    display: flex;
    gap: 6px;
  }
  .lm-menu-toggle {
    order: 4;
    justify-self: end;
  }
  .lm-nav-panel {
    position: fixed;
    inset: calc(var(--lm-topbar-height) + 72px) 0 0 0;
    padding: 18px 16px 32px;
    display: none;
    overflow: auto;
    background: rgba(252,251,253,0.99);
    backdrop-filter: blur(16px);
    border-top: 1px solid rgba(17,17,17,0.06);
  }
  .lm-site-header.is-menu-open .lm-nav-panel {
    display: block;
  }
  .lm-mobile-utility {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(17,17,17,0.08);
  }
  .lm-search-modal__dialog {
    width: calc(100% - 18px);
    margin-top: 14vh;
    padding: 20px;
    border-radius: 24px;
  }
  .lm-search-modal form {
    flex-direction: column;
  }
  .lm-search-modal input[type="search"],
  .lm-search-modal button[type="submit"],
  .lm-search-modal .search-submit {
    width: 100%;
    min-height: 62px;
  }
  .lm-global-footer .footer-grid {
    grid-template-columns: 1fr;
  }
  .lm-footer-logo-image {
    height: 60px;
  }
}


/* ===== v12 fixes ===== */
.lm-site-header__inner {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 18px;
}
.lm-logo-image {
  height: 54px;
  max-width: 310px;
}
.lm-nav-panel {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lm-main-nav {
  width: 100%;
}
.lm-menu {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(10px, 1vw, 18px);
  width: 100%;
}
.lm-menu > li > a {
  max-width: 126px;
}
.lm-header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-self: end;
}

.lm-product-block--variants-under-title {
  margin-top: 18px;
  padding-top: 18px;
}
.lm-product-summary-col .lm-product-block--variants-under-title .lm-variant-mini-grid {
  margin-top: 4px;
}
.lm-product-summary-col .lm-product-block--variants-under-title .lm-variant-preview-box {
  margin-top: 14px;
}
.lm-gallery-col .lm-product-block--variants-under-title,
.lm-gallery-thumbs .lm-product-block--variants-under-title {
  display: none !important;
}

.lm-related-products-section {
  margin-top: 72px;
}

@media (max-width: 980px) {
  .lm-site-header__inner {
    grid-template-columns: auto 1fr auto auto;
    gap: 8px;
  }
  .lm-logo-image-link {
    order: 1;
  }
  .lm-header-actions {
    order: 2;
    justify-self: end;
    gap: 6px;
  }
  .lm-menu-toggle {
    order: 3;
    justify-self: end;
  }
  .lm-nav-panel {
    order: 4;
    display: none;
    position: fixed;
    inset: calc(var(--lm-topbar-height) + 68px) 0 0 0;
    z-index: 110;
    padding: 18px 16px 36px;
    overflow-y: auto;
    background: rgba(252,251,253,0.99);
    backdrop-filter: blur(16px);
    border-top: 1px solid rgba(17,17,17,0.06);
    justify-content: flex-start;
    align-items: flex-start;
  }
  .lm-site-header.is-menu-open .lm-nav-panel {
    display: block;
  }
  .lm-main-nav {
    width: 100%;
  }
  .lm-menu {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
  }
  .lm-menu > li > a {
    max-width: none;
  }
  .lm-logo-image {
    height: 44px;
    max-width: 170px;
  }
}


/* ===== v13 topbar slider from Customizer ===== */
.lm-topbar--slider {
  position: sticky;
  top: 0;
  z-index: 90;
  overflow: hidden;
  background: var(--accent);
  color: #fff;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lm-topbar__slides {
  position: relative;
  width: min(1600px, calc(100% - 32px));
  height: 44px;
}
.lm-topbar__slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .35s ease, transform .35s ease;
  text-align: center;
  font-size: .9rem;
  letter-spacing: .04em;
  font-weight: 500;
  padding: 0 16px;
}
.lm-topbar__slide.is-active {
  opacity: 1;
  transform: translateY(0);
}


/* ===== v14 header/menu hotfix ===== */
.lm-site-header {
  width: min(1780px, calc(100% - 24px));
  overflow: visible;
}

.lm-site-header__inner {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto auto !important;
  align-items: center;
  column-gap: 18px;
}

.lm-logo-image {
  height: 42px !important;
  max-width: 260px !important;
}

.lm-logo-image-link {
  min-width: 0;
  display: inline-flex;
  align-items: center;
}

.lm-nav-panel {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
}

.lm-main-nav {
  min-width: 0;
}

.lm-menu {
  flex-wrap: nowrap !important;
  justify-content: center;
  align-items: center;
  gap: clamp(8px, 0.9vw, 16px) !important;
}

.lm-menu > li {
  min-width: 0;
}

.lm-menu > li > a {
  max-width: 132px !important;
  min-height: 48px;
  font-size: 0.82rem !important;
  line-height: 1.08 !important;
  padding: 8px 22px 8px 12px !important;
}

.lm-header-actions {
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  z-index: 5;
}

.lm-header-actions .lm-header-icon {
  width: 42px;
  height: 42px;
}

.lm-menu-toggle {
  justify-self: end;
}

@media (min-width: 981px) {
  .lm-menu-toggle {
    display: none !important;
  }
}

@media (max-width: 980px) {
  body.lm-menu-open {
    overflow: hidden;
  }

  .lm-site-header {
    width: calc(100% - 16px);
  }

  .lm-site-header__inner {
    grid-template-columns: auto 1fr auto auto !important;
    column-gap: 8px;
  }

  .lm-logo-image {
    height: 40px !important;
    max-width: 150px !important;
  }

  .lm-header-actions {
    order: 3;
    justify-self: end;
    gap: 6px;
  }

  .lm-menu-toggle {
    order: 4;
    display: inline-flex !important;
    justify-self: end;
  }

  .lm-nav-panel {
    display: none;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    top: calc(var(--lm-topbar-height) + 72px) !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    padding: 18px 16px 36px !important;
    background: rgba(252,251,253,0.99) !important;
    backdrop-filter: blur(16px);
    border-top: 1px solid rgba(17,17,17,0.06);
    z-index: 999 !important;
  }

  .lm-site-header.is-menu-open .lm-nav-panel {
    display: block !important;
  }

  .lm-mobile-utility {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(17,17,17,0.08);
  }

  .lm-main-nav,
  .lm-menu {
    width: 100% !important;
  }

  .lm-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
  }

  .lm-menu > li,
  .lm-menu .sub-menu li {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    column-gap: 8px !important;
  }

  .lm-menu > li {
    padding: 0 !important;
    border-bottom: 1px solid rgba(17,17,17,0.08);
  }

  .lm-menu > li > a,
  .lm-menu .sub-menu a {
    max-width: none !important;
    width: 100%;
    padding: 16px 0 !important;
    line-height: 1.2 !important;
  }

  .lm-submenu-toggle {
    margin: 0 !important;
    justify-self: end !important;
    align-self: center !important;
    position: static !important;
    display: inline-flex !important;
  }

  .lm-menu .sub-menu {
    grid-column: 1 / -1 !important;
    position: static !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 0 12px 14px !important;
    margin: 0 !important;
    box-shadow: none !important;
    border: 0 !important;
    background: transparent !important;
  }

  .lm-menu li.is-submenu-open > .sub-menu {
    display: block !important;
  }
}


/* ===== v15 menu sizing + mobile hamburger fix ===== */
.lm-site-header,
.lm-header-utility-bar__inner,
.lm-topbar__slides {
  width: var(--container);
  max-width: var(--container);
  margin-left: auto;
  margin-right: auto;
}

.lm-site-header__inner {
  grid-template-columns: auto minmax(0,1fr) auto auto !important;
  column-gap: 16px;
}

.lm-logo-image {
  height: 38px !important;
  max-width: 220px !important;
}

.lm-nav-panel {
  min-width: 0;
  width: 100%;
}

.lm-main-nav {
  min-width: 0;
  width: 100%;
}

.lm-menu {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(8px, 0.8vw, 14px) !important;
  flex-wrap: nowrap !important;
}

.lm-menu > li {
  min-width: 0;
  flex: 0 1 auto;
}

.lm-menu > li > a {
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-start;
  gap: 5px !important;
  width: auto !important;
  max-width: 118px !important;
  min-height: 44px !important;
  padding: 8px 12px !important;
  border-radius: 16px;
  text-align: left;
  white-space: normal;
  text-wrap: balance;
  line-height: 1.08 !important;
}

.lm-menu > li.menu-item-has-children > a {
  padding-right: 12px !important;
}

.lm-menu > li.menu-item-has-children > a::before {
  display: none !important;
}

.lm-menu > li.menu-item-has-children > a::after {
  content: "";
  position: static !important;
  width: 8px;
  height: 8px;
  margin-left: 5px !important;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
  flex: 0 0 auto;
  opacity: .85;
}

.lm-menu .sub-menu > li.menu-item-has-children > a::after {
  margin-left: auto !important;
  width: 8px;
  height: 8px;
  border-right: 1.5px solid currentColor;
  border-top: 1.5px solid currentColor;
  transform: rotate(45deg);
}

.lm-header-actions {
  justify-self: end;
  margin-left: auto;
}

@media (max-width: 980px) {
  .lm-site-header,
  .lm-header-utility-bar__inner,
  .lm-topbar__slides {
    width: calc(100% - 16px);
    max-width: calc(100% - 16px);
  }

  .lm-site-header__inner {
    grid-template-columns: auto 1fr auto auto !important;
    align-items: center;
    column-gap: 8px;
  }

  .lm-logo-image {
    height: 36px !important;
    max-width: 136px !important;
  }

  .lm-header-actions {
    order: 3;
    display: flex;
    align-items: center;
    gap: 6px;
    justify-self: end;
    margin-left: auto;
  }

  .lm-menu-toggle {
    order: 4;
    justify-self: end;
    z-index: 1002;
  }

  .lm-nav-panel {
    display: none;
    position: fixed !important;
    inset: calc(var(--lm-topbar-height) + 64px) 0 0 0 !important;
    width: 100vw !important;
    height: calc(100dvh - (var(--lm-topbar-height) + 64px)) !important;
    max-height: calc(100dvh - (var(--lm-topbar-height) + 64px)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 18px 16px 36px !important;
    background: rgba(252,251,253,0.995) !important;
    backdrop-filter: blur(16px);
    border-top: 1px solid rgba(17,17,17,0.06);
    z-index: 1000 !important;
  }

  .lm-site-header.is-menu-open .lm-nav-panel {
    display: block !important;
  }

  .lm-main-nav,
  .lm-menu {
    width: 100% !important;
  }

  .lm-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
  }

  .lm-menu > li,
  .lm-menu .sub-menu li {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    column-gap: 10px !important;
    width: 100%;
  }

  .lm-menu > li {
    border-bottom: 1px solid rgba(17,17,17,0.08);
  }

  .lm-menu > li > a,
  .lm-menu .sub-menu a {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    padding: 16px 0 !important;
    border-radius: 0 !important;
    line-height: 1.2 !important;
  }

  .lm-menu > li.menu-item-has-children > a::after,
  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    display: none !important;
  }

  .lm-submenu-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    border-radius: 999px;
    position: static !important;
    justify-self: end !important;
    align-self: center !important;
    flex: 0 0 auto;
  }

  .lm-menu .sub-menu {
    display: none;
    grid-column: 1 / -1 !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 0 12px 14px !important;
    box-shadow: none !important;
    border: 0 !important;
    background: transparent !important;
  }

  .lm-menu li.is-submenu-open > .sub-menu {
    display: block !important;
  }

  .lm-menu .sub-menu .sub-menu {
    padding-left: 12px !important;
  }
}


/* ===== v16 desktop menu final sizing/arrows ===== */
@media (min-width: 981px) {
  .lm-site-header,
  .lm-header-utility-bar__inner,
  .lm-topbar__slides {
    width: min(1760px, calc(100% - 40px)) !important;
    max-width: min(1760px, calc(100% - 40px)) !important;
  }

  .lm-site-header__inner {
    grid-template-columns: auto minmax(0,1fr) auto !important;
    column-gap: 20px !important;
  }

  .lm-logo-image {
    height: 34px !important;
    max-width: 210px !important;
  }

  .lm-nav-panel {
    min-width: 0;
    width: 100%;
    justify-content: center !important;
  }

  .lm-main-nav {
    width: 100%;
    min-width: 0;
  }

  .lm-menu {
    width: 100%;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
  }

  .lm-menu > li {
    min-width: 0;
    flex: 0 1 auto;
  }

  .lm-menu > li > a {
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
    max-width: 120px !important;
    min-height: 44px !important;
    padding: 8px 10px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    text-align: left !important;
    white-space: normal !important;
    text-wrap: balance;
    line-height: 1.1 !important;
    font-size: 0.82rem !important;
  }

  .lm-menu > li.menu-item-has-children > a {
    padding-right: 10px !important;
  }

  .lm-menu > li.menu-item-has-children > a::before {
    display: none !important;
    content: none !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    position: static !important;
    width: 7px !important;
    height: 7px !important;
    margin-left: 5px !important;
    border-right: 1.5px solid currentColor !important;
    border-bottom: 1.5px solid currentColor !important;
    border-top: 0 !important;
    transform: rotate(45deg) !important;
    flex: 0 0 auto !important;
    opacity: .9 !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    width: 7px !important;
    height: 7px !important;
    margin-left: 0 !important;
    border-right: 1.5px solid currentColor !important;
    border-top: 1.5px solid currentColor !important;
    border-bottom: 0 !important;
    transform: translateY(-50%) rotate(45deg) !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  .lm-header-actions {
    justify-self: end !important;
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    position: relative;
    z-index: 5;
  }

  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a,
  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: rgba(113,34,137,0.08) !important;
    color: var(--accent-dark) !important;
    box-shadow: inset 0 0 0 1px rgba(113,34,137,0.10) !important;
  }
}

@media (max-width: 980px) {
  .lm-site-header,
  .lm-header-utility-bar__inner,
  .lm-topbar__slides {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
  }

  .lm-nav-panel {
    inset: calc(var(--lm-topbar-height) + 64px) 0 0 0 !important;
    height: calc(100svh - (var(--lm-topbar-height) + 64px)) !important;
    max-height: calc(100svh - (var(--lm-topbar-height) + 64px)) !important;
    min-height: calc(100svh - (var(--lm-topbar-height) + 64px)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-bottom: 60px !important;
  }

  .lm-menu > li > a,
  .lm-menu .sub-menu a {
    font-size: 0.95rem !important;
  }
}


/* ===== v18 header container + arrow fix ===== */
.lm-site-header {
  width: 100% !important;
  background: rgba(255,255,255,0.78) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.lm-site-header__inner,
.lm-header-utility-bar__inner,
.lm-topbar__slides {
  width: min(1280px, calc(100% - 40px)) !important;
  max-width: min(1280px, calc(100% - 40px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (min-width: 981px) {
  .lm-site-header__inner {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    column-gap: 20px !important;
  }

  .lm-logo-image {
    height: 34px !important;
    max-width: 210px !important;
    width: auto !important;
  }

  .lm-nav-panel,
  .lm-main-nav {
    width: 100% !important;
    min-width: 0 !important;
  }

  .lm-nav-panel {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .lm-menu {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 14px !important;
    flex-wrap: nowrap !important;
  }

  .lm-menu > li {
    min-width: 0 !important;
    flex: 0 1 auto !important;
  }

  .lm-menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    max-width: 120px !important;
    min-height: 44px !important;
    padding: 8px 10px !important;
    gap: 5px !important;
    border-radius: 14px !important;
    line-height: 1.1 !important;
    font-size: 0.82rem !important;
    text-align: left !important;
    white-space: normal !important;
    text-decoration: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    text-wrap: balance;
    box-shadow: none !important;
  }

  .lm-menu > li > a::before,
  .lm-menu > li > a::after {
    content: none !important;
    display: none !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    display: inline-block !important;
    width: 7px !important;
    height: 7px !important;
    margin-left: 5px !important;
    border-right: 1.5px solid currentColor !important;
    border-bottom: 1.5px solid currentColor !important;
    border-top: 0 !important;
    transform: rotate(45deg) translateY(-1px) !important;
    background: transparent !important;
    box-shadow: none !important;
    flex: 0 0 auto !important;
    opacity: 0.9 !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::before,
  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: none !important;
    display: none !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    width: 7px !important;
    height: 7px !important;
    border-right: 1.5px solid currentColor !important;
    border-top: 1.5px solid currentColor !important;
    transform: translateY(-50%) rotate(45deg) !important;
    background: transparent !important;
    box-shadow: none !important;
    opacity: 0.85 !important;
  }

  .lm-header-actions {
    justify-self: end !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-left: auto !important;
  }
}

@media (max-width: 980px) {
  .lm-site-header__inner,
  .lm-header-utility-bar__inner,
  .lm-topbar__slides {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
  }
}


/* ===== v19 visual refinements ===== */

/* product image area: remove decorative frame */
.lm-gallery-main-frame {
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.lm-gallery-main-image {
  border-radius: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.lm-gallery-main-image img,
#lmMainProductImage {
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* desktop menu font smaller and calmer active/hover state */
@media (min-width: 981px) {
  .lm-menu > li > a {
    font-size: 0.70rem !important; /* ~2px smaller */
    letter-spacing: 0.06em !important;
    border-radius: 12px !important;
  }

  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a {
    background: rgba(113,34,137,0.04) !important;
    color: var(--accent-dark) !important;
    box-shadow: inset 0 0 0 1px rgba(113,34,137,0.08) !important;
  }

  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: rgba(113,34,137,0.06) !important;
    color: var(--accent-dark) !important;
    box-shadow: inset 0 0 0 1px rgba(113,34,137,0.10) !important;
  }

  /* calmer dropdown highlight */
  .lm-menu .sub-menu > li:hover > a,
  .lm-menu .sub-menu > li:focus-within > a,
  .lm-menu .sub-menu > li.current-menu-item > a,
  .lm-menu .sub-menu > li.current-menu-ancestor > a {
    background: rgba(113,34,137,0.05) !important;
    color: var(--accent-dark) !important;
  }
}

/* mobile selected item more elegant too */
@media (max-width: 980px) {
  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: rgba(113,34,137,0.05) !important;
    color: var(--accent-dark) !important;
    box-shadow: inset 0 0 0 1px rgba(113,34,137,0.08) !important;
    border-radius: 12px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}


/* ===== v20 header/product/nav refinements ===== */

/* Header should sit on page background, frosted only on upward scroll */
.lm-site-header {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transition: background .28s ease, backdrop-filter .28s ease, box-shadow .28s ease, border-color .28s ease, transform .28s ease, opacity .28s ease;
  box-shadow: none !important;
}

.lm-site-header.is-scrolled-up {
  background: rgba(255,255,255,0.62) !important;
  backdrop-filter: blur(12px) saturate(115%) !important;
  -webkit-backdrop-filter: blur(12px) saturate(115%) !important;
  box-shadow: 0 10px 28px rgba(78,15,88,0.06) !important;
  border-bottom: 1px solid rgba(17,17,17,0.05);
}

.lm-header-utility-bar {
  background: transparent !important;
  backdrop-filter: none !important;
}

.lm-header-utility-bar.is-scrolled-up {
  background: rgba(255,255,255,0.46) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border-bottom: 1px solid rgba(17,17,17,0.04);
}

/* Main menu hover effect: subtle float + glow instead of underline/color swap */
@media (min-width: 981px) {
  .lm-menu > li > a {
    position: relative;
    transform: translateY(0);
    transition: transform .24s ease, box-shadow .24s ease, background .24s ease, border-color .24s ease;
    background: transparent !important;
    box-shadow: none !important;
    border: 1px solid transparent;
  }

  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a {
    transform: translateY(-2px);
    background: rgba(255,255,255,0.56) !important;
    box-shadow: 0 10px 24px rgba(78,15,88,0.07), inset 0 0 0 1px rgba(113,34,137,0.08) !important;
    border-color: rgba(113,34,137,0.10);
  }

  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: rgba(255,255,255,0.5) !important;
    box-shadow: 0 8px 18px rgba(78,15,88,0.05), inset 0 0 0 1px rgba(113,34,137,0.10) !important;
    border-color: rgba(113,34,137,0.12);
    transform: translateY(-1px);
  }
}

/* Dropdown trigger arrows: same icon style in all menu levels */
.lm-menu > li.menu-item-has-children > a::after,
.lm-menu .sub-menu > li.menu-item-has-children > a::after {
  content: "" !important;
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 1.6px solid currentColor !important;
  border-bottom: 1.6px solid currentColor !important;
  border-top: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: .95 !important;
}

.lm-menu > li.menu-item-has-children > a::after {
  position: static !important;
  margin-left: 5px !important;
  transform: rotate(45deg) translateY(-1px) !important;
  flex: 0 0 auto !important;
}

.lm-menu .sub-menu > li.menu-item-has-children > a {
  position: relative !important;
  padding-right: 42px !important;
}

.lm-menu .sub-menu > li.menu-item-has-children > a::after {
  position: absolute !important;
  right: 18px !important;
  top: 50% !important;
  margin-left: 0 !important;
  transform: translateY(-50%) rotate(-45deg) !important; /* points right */
}

/* Product image area rounded like homepage cards */
.lm-gallery-main-image,
.lm-gallery-main-image img,
#lmMainProductImage {
  border-radius: 28px !important;
  overflow: hidden !important;
}

.lm-gallery-thumbs {
  gap: 14px !important;
}

.lm-thumb {
  border-radius: 22px !important;
  overflow: hidden !important;
  background: rgba(255,255,255,0.72) !important;
  border: 1px solid rgba(17,17,17,0.08) !important;
  box-shadow: 0 12px 28px rgba(78,15,88,0.05) !important;
}

.lm-thumb img {
  border-radius: 16px !important;
}

.lm-thumb.is-active {
  border-color: rgba(0,105,255,0.55) !important;
  box-shadow: 0 0 0 2px rgba(0,105,255,0.14), 0 12px 28px rgba(78,15,88,0.07) !important;
}

/* Dropdown panels visually aligned with the same aesthetic */
.lm-menu .sub-menu {
  border-radius: 26px !important;
  background: rgba(255,255,255,0.84) !important;
  backdrop-filter: blur(14px) saturate(115%);
  -webkit-backdrop-filter: blur(14px) saturate(115%);
  border: 1px solid rgba(17,17,17,0.06) !important;
  box-shadow: 0 22px 54px rgba(78,15,88,0.10) !important;
}

.lm-menu .sub-menu a {
  border-radius: 16px !important;
}

/* Mobile nav icons purple */
@media (max-width: 980px) {
  .lm-header-actions .lm-header-icon {
    color: var(--accent) !important;
    border-color: rgba(113,34,137,0.14) !important;
  }

  .lm-header-actions .lm-header-icon svg,
  .lm-header-actions .lm-header-icon path {
    color: var(--accent) !important;
    fill: currentColor !important;
  }
}

/* Topbar: continuous right-moving slider showing Customizer messages */
.lm-topbar--slider {
  overflow: hidden !important;
  background: var(--accent) !important;
  color: #fff !important;
}

.lm-topbar__slides {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  min-width: max-content;
  display: flex !important;
  align-items: center !important;
  gap: 48px !important;
  white-space: nowrap !important;
  animation: lmTopbarMarqueeRight 28s linear infinite !important;
  padding: 0 18px !important;
}

.lm-topbar__slide {
  position: static !important;
  inset: auto !important;
  opacity: 1 !important;
  transform: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px;
  font-size: .9rem !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
}

.lm-topbar__slide::after {
  content: "•";
  margin-left: 48px;
  opacity: .56;
}

.lm-topbar__slide:last-child::after {
  content: "•";
}

@keyframes lmTopbarMarqueeRight {
  0%   { transform: translateX(-35%); }
  100% { transform: translateX(0%); }
}


/* ===== v21 menu no-wrap scaling + 4-col archive ===== */

/* Desktop navigation should never break into multiple lines */
@media (min-width: 981px) {
  .lm-site-header__inner {
    grid-template-columns: auto minmax(0,1fr) auto !important;
  }

  .lm-nav-panel,
  .lm-main-nav {
    min-width: 0 !important;
    width: 100% !important;
  }

  .lm-menu {
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    gap: clamp(4px, 0.45vw, 10px) !important;
  }

  .lm-menu > li {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    max-width: none !important;
    display: flex !important;
    justify-content: center !important;
  }

  .lm-menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
    text-wrap: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
    width: auto !important;
    min-height: 40px !important;
    padding: 8px 8px !important;
    font-size: clamp(0.56rem, 0.66vw, 0.72rem) !important;
    line-height: 1 !important;
    letter-spacing: 0.045em !important;
    gap: 5px !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    margin-left: 5px !important;
  }
}

/* Product archive: 4 columns on desktop */
@media (min-width: 1200px) {
  .archive .products,
  .post-type-archive-product .products,
  .tax-product_cat .products,
  .tax-product_tag .products,
  .woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 26px !important;
  }

  .archive .products li.product,
  .post-type-archive-product .products li.product,
  .tax-product_cat .products li.product,
  .tax-product_tag .products li.product,
  .woocommerce ul.products li.product {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .archive .products,
  .post-type-archive-product .products,
  .tax-product_cat .products,
  .tax-product_tag .products,
  .woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px !important;
  }

  .archive .products li.product,
  .post-type-archive-product .products li.product,
  .tax-product_cat .products li.product,
  .tax-product_tag .products li.product,
  .woocommerce ul.products li.product {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
  }
}


/* ===== v22 desktop menu cleanup ===== */
@media (min-width: 981px) {
  .lm-nav-panel,
  .lm-main-nav {
    width: 100% !important;
    min-width: 0 !important;
  }

  .lm-menu {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: clamp(6px, 0.7vw, 14px) !important;
    flex-wrap: nowrap !important;
  }

  .lm-menu > li {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    max-width: 150px !important;
    display: block !important;
  }

  .lm-menu > li > a {
    position: relative !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;

    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    hyphens: none !important;
    text-wrap: balance !important;

    width: auto !important;
    max-width: 150px !important;
    min-height: auto !important;
    padding: 6px 18px 8px 0 !important;
    margin: 0 auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    font-size: clamp(0.56rem, 0.62vw, 0.70rem) !important;
    line-height: 1.12 !important;
    letter-spacing: 0.045em !important;
    text-align: left !important;
    transform: none !important;
  }

  .lm-menu > li > a::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 18px !important;
    bottom: 0 !important;
    height: 1px !important;
    background: var(--accent) !important;
    opacity: 0 !important;
    transform: scaleX(0.35) !important;
    transform-origin: left center !important;
    transition: opacity .2s ease, transform .2s ease !important;
    display: block !important;
  }

  .lm-menu > li:hover > a::before,
  .lm-menu > li:focus-within > a::before,
  .lm-menu > li.current-menu-item > a::before,
  .lm-menu > li.current-menu-ancestor > a::before {
    opacity: .9 !important;
    transform: scaleX(1) !important;
  }

  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a,
  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: transparent !important;
    box-shadow: none !important;
    border-color: transparent !important;
    transform: none !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    position: absolute !important;
    right: 2px !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    margin-left: 0 !important;
    border-right: 1.5px solid currentColor !important;
    border-bottom: 1.5px solid currentColor !important;
    transform: translateY(-50%) rotate(45deg) !important;
    background: transparent !important;
    box-shadow: none !important;
    opacity: .9 !important;
    display: block !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    transform: translateY(-50%) rotate(-45deg) !important;
  }
}

/* Slightly tighter menu on medium desktop widths */
@media (min-width: 981px) and (max-width: 1280px) {
  .lm-menu {
    gap: 8px !important;
  }

  .lm-menu > li {
    max-width: 138px !important;
  }

  .lm-menu > li > a {
    max-width: 138px !important;
    font-size: clamp(0.54rem, 0.58vw, 0.66rem) !important;
  }
}


/* ===== v23 archive 4 columns + menu arrow cleanup ===== */

/* Archive always 4 columns on desktop/tablet landscape */
@media (min-width: 1024px) {
  .archive .products,
  .post-type-archive-product .products,
  .tax-product_cat .products,
  .tax-product_tag .products,
  .woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 24px !important;
  }

  .archive .products li.product,
  .post-type-archive-product .products li.product,
  .tax-product_cat .products li.product,
  .tax-product_tag .products li.product,
  .woocommerce ul.products li.product {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
    max-width: none !important;
  }
}

/* Desktop menu: no shadow, underline only, arrows next to text */
@media (min-width: 981px) {
  .lm-menu > li > a {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    filter: none !important;
  }

  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a,
  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    transform: none !important;
  }

  .lm-menu > li > a::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 18px !important;
    bottom: 0 !important;
    height: 1px !important;
    background: var(--accent) !important;
    opacity: 0 !important;
    transform: scaleX(0.35) !important;
    transform-origin: left center !important;
    transition: opacity .18s ease, transform .18s ease !important;
    box-shadow: none !important;
  }

  .lm-menu > li:hover > a::before,
  .lm-menu > li:focus-within > a::before,
  .lm-menu > li.current-menu-item > a::before,
  .lm-menu > li.current-menu-ancestor > a::before {
    opacity: 1 !important;
    transform: scaleX(1) !important;
  }

  .lm-menu > li.menu-item-has-children > a {
    padding-right: 16px !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    position: absolute !important;
    right: 2px !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    margin-left: 0 !important;
    border-right: 1.5px solid currentColor !important;
    border-bottom: 1.5px solid currentColor !important;
    border-top: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) rotate(45deg) !important;
    opacity: .95 !important;
  }

  /* submenu hover without shadow */
  .lm-menu .sub-menu > li:hover > a,
  .lm-menu .sub-menu > li:focus-within > a,
  .lm-menu .sub-menu > li.current-menu-item > a,
  .lm-menu .sub-menu > li.current-menu-ancestor > a {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  /* 3rd level arrow always on the right */
  .lm-menu .sub-menu > li.menu-item-has-children > a {
    position: relative !important;
    padding-right: 34px !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::before {
    content: none !important;
    display: none !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    position: absolute !important;
    right: 14px !important;
    left: auto !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    margin-left: 0 !important;
    border-right: 1.5px solid currentColor !important;
    border-top: 1.5px solid currentColor !important;
    border-bottom: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) rotate(45deg) !important;
    opacity: .9 !important;
  }
}

/* Mobile menu: remove purple shadow/box, keep only underline; arrow beside text */
@media (max-width: 980px) {
  .lm-menu > li > a,
  .lm-menu .sub-menu a {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .lm-menu > li > a::before,
  .lm-menu .sub-menu a::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 1px !important;
    background: var(--accent) !important;
    opacity: 0 !important;
    transform: scaleX(.25) !important;
    transform-origin: left center !important;
    transition: opacity .18s ease, transform .18s ease !important;
  }

  .lm-menu > li:hover > a::before,
  .lm-menu > li:focus-within > a::before,
  .lm-menu > li.current-menu-item > a::before,
  .lm-menu > li.current-menu-ancestor > a::before,
  .lm-menu .sub-menu li:hover > a::before,
  .lm-menu .sub-menu li:focus-within > a::before,
  .lm-menu .sub-menu li.current-menu-item > a::before,
  .lm-menu .sub-menu li.current-menu-ancestor > a::before {
    opacity: 1 !important;
    transform: scaleX(1) !important;
  }

  .lm-menu > li,
  .lm-menu .sub-menu li {
    position: relative !important;
  }

  .lm-menu > li > a,
  .lm-menu .sub-menu a {
    position: relative !important;
  }

  .lm-menu > li.menu-item-has-children > a::after,
  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: none !important;
    display: none !important;
  }

  .lm-submenu-toggle {
    color: var(--accent) !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    width: 28px !important;
    height: 28px !important;
  }

  .lm-submenu-toggle span[aria-hidden="true"] {
    display: inline-block !important;
    width: 8px !important;
    height: 8px !important;
    border-right: 1.5px solid currentColor !important;
    border-bottom: 1.5px solid currentColor !important;
    transform: rotate(45deg) !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  .lm-menu li.is-submenu-open > .lm-submenu-toggle span[aria-hidden="true"] {
    transform: rotate(225deg) !important;
  }
}


/* ===== v24 topbar/utility visibility + underline only under text ===== */

/* Utility bar should be white */
.lm-header-utility-bar {
  background: #ffffff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  border-bottom: 1px solid rgba(17,17,17,0.06) !important;
}

/* Topbar and utility only visible at page top */
.lm-topbar,
.lm-header-utility-bar {
  transition: opacity .24s ease, transform .24s ease, visibility .24s ease !important;
}

.lm-topbar.is-hidden-at-scroll,
.lm-header-utility-bar.is-hidden-at-scroll {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(-100%) !important;
}

/* Header offset when top rows hidden */
.lm-site-header {
  top: calc(var(--lm-topbar-height) + var(--lm-utility-height)) !important;
  transition: top .24s ease, background .28s ease, backdrop-filter .28s ease, box-shadow .28s ease, border-color .28s ease, transform .28s ease, opacity .28s ease !important;
}

body.lm-top-rows-hidden .lm-site-header {
  top: 0 !important;
}

/* Underline should sit only under the text width, not full card width */
@media (min-width: 981px) {
  .lm-menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: 150px !important;
    margin: 0 auto !important;
    padding: 6px 18px 8px 0 !important;
    position: relative !important;
  }

  .lm-menu > li > a::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    width: calc(100% - 18px) !important;
    height: 1px !important;
    background: var(--accent) !important;
    opacity: 0 !important;
    transform: scaleX(0.35) !important;
    transform-origin: left center !important;
    transition: opacity .18s ease, transform .18s ease !important;
    box-shadow: none !important;
  }

  .lm-menu > li:hover > a::before,
  .lm-menu > li:focus-within > a::before,
  .lm-menu > li.current-menu-item > a::before,
  .lm-menu > li.current-menu-ancestor > a::before {
    opacity: 1 !important;
    transform: scaleX(1) !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    right: 2px !important;
  }
}

@media (max-width: 980px) {
  .lm-menu > li > a,
  .lm-menu .sub-menu a {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    max-width: calc(100% - 40px) !important;
    padding: 16px 0 !important;
  }

  .lm-menu > li > a::before,
  .lm-menu .sub-menu a::before {
    left: 0 !important;
    right: auto !important;
    width: 100% !important;
  }
}


/* ===== v25 align header/utility to site content width ===== */
:root {
  --lm-site-content-width: min(1680px, calc(100% - 48px));
}

/* Topbar remains full width */
.lm-topbar {
  width: 100% !important;
}
.lm-topbar__slides {
  width: 100% !important;
  max-width: none !important;
}

/* Utility + header inner content aligned to the same width as page content */
.lm-header-utility-bar__inner,
.lm-site-header__inner {
  width: var(--lm-site-content-width) !important;
  max-width: var(--lm-site-content-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.lm-site-header {
  width: 100% !important;
}

.lm-site-header__inner {
  display: grid !important;
  grid-template-columns: auto minmax(0,1fr) auto !important;
  align-items: center !important;
  column-gap: 20px !important;
}

.lm-header-utility-bar__inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 52px !important;
}

.lm-header-utility-bar__left,
.lm-header-utility-bar__right {
  flex: 0 0 auto;
}

.lm-nav-panel,
.lm-main-nav {
  width: 100% !important;
  min-width: 0 !important;
}

.lm-menu {
  width: 100% !important;
  justify-content: center !important;
  gap: clamp(10px, 1vw, 18px) !important;
}

.lm-header-actions {
  justify-self: end !important;
  margin-left: auto !important;
}

@media (max-width: 980px) {
  :root {
    --lm-site-content-width: calc(100% - 16px);
  }

  .lm-header-utility-bar__inner,
  .lm-site-header__inner {
    width: var(--lm-site-content-width) !important;
    max-width: var(--lm-site-content-width) !important;
  }

  .lm-site-header__inner {
    grid-template-columns: auto 1fr auto auto !important;
    column-gap: 8px !important;
  }
}


/* ===== v26 header/full-width background + aligned inner content ===== */
:root {
  --lm-header-inner-width: calc(100% - 48px);
}

/* full-width frosted background strip, no side gaps */
.lm-site-header,
.lm-header-utility-bar {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* keep topbar full-width too */
.lm-topbar {
  width: 100% !important;
  margin: 0 !important;
  max-width: none !important;
}

/* align actual content with site content edges */
.lm-site-header__inner,
.lm-header-utility-bar__inner {
  width: var(--lm-header-inner-width) !important;
  max-width: var(--lm-header-inner-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* explicit desktop layout: logo | menu | icons */
@media (min-width: 981px) {
  .lm-site-header__inner {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    column-gap: 20px !important;
  }

  .lm-header-utility-bar__inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 52px !important;
  }

  .lm-logo-image-link {
    justify-self: start !important;
  }

  .lm-nav-panel,
  .lm-main-nav {
    width: 100% !important;
    min-width: 0 !important;
    justify-self: stretch !important;
  }

  .lm-nav-panel {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .lm-menu {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: clamp(10px, 1vw, 18px) !important;
  }

  .lm-header-actions {
    justify-self: end !important;
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
  }

  .lm-menu > li.menu-item-has-children > a {
    padding-right: 16px !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    right: 0 !important;
  }
}

@media (max-width: 980px) {
  :root {
    --lm-header-inner-width: calc(100% - 16px);
  }

  .lm-site-header__inner,
  .lm-header-utility-bar__inner {
    width: var(--lm-header-inner-width) !important;
    max-width: var(--lm-header-inner-width) !important;
  }
}


/* ===== v27 final header width + arrow placement ===== */
:root {
  --lm-content-align-width: min(1800px, calc(100% - 8vw));
}

/* full width frosted background stays on wrappers */
.lm-site-header,
.lm-header-utility-bar,
.lm-topbar {
  width: 100% !important;
  max-width: none !important;
}

/* actual content aligned to same width as page sections/hero */
.lm-site-header__inner,
.lm-header-utility-bar__inner {
  width: var(--lm-content-align-width) !important;
  max-width: var(--lm-content-align-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (min-width: 981px) {
  .lm-site-header__inner {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    column-gap: 24px !important;
  }

  .lm-header-utility-bar__inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 52px !important;
  }

  .lm-nav-panel,
  .lm-main-nav {
    width: 100% !important;
    min-width: 0 !important;
  }

  .lm-nav-panel {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .lm-menu {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: clamp(14px, 1.1vw, 24px) !important;
  }

  .lm-header-actions {
    justify-self: end !important;
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
  }

  /* arrows always on the right of text */
  .lm-menu > li.menu-item-has-children > a,
  .lm-menu .sub-menu > li.menu-item-has-children > a {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    padding-right: 18px !important;
  }

  .lm-menu > li.menu-item-has-children > a::before,
  .lm-menu .sub-menu > li.menu-item-has-children > a::before {
    content: none !important;
    display: none !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    right: 2px !important;
    left: auto !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    margin-left: 0 !important;
    border-right: 1.5px solid currentColor !important;
    border-bottom: 1.5px solid currentColor !important;
    border-top: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) rotate(45deg) !important;
    opacity: .95 !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    right: 14px !important;
    left: auto !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    margin-left: 0 !important;
    border-right: 1.5px solid currentColor !important;
    border-top: 1.5px solid currentColor !important;
    border-bottom: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) rotate(45deg) !important;
    opacity: .9 !important;
  }
}

@media (max-width: 980px) {
  :root {
    --lm-content-align-width: calc(100% - 16px);
  }

  .lm-site-header__inner,
  .lm-header-utility-bar__inner {
    width: var(--lm-content-align-width) !important;
    max-width: var(--lm-content-align-width) !important;
  }
}


/* ===== v28 menu arrow alignment + underline only text ===== */
@media (min-width: 981px) {
  /* anchor behaves like inline text group so hover opens dropdown normally */
  .lm-menu > li,
  .lm-menu .sub-menu > li {
    position: relative !important;
  }

  .lm-menu > li > a,
  .lm-menu .sub-menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    vertical-align: middle !important;
  }

  /* underline should follow text content width, not whole item box */
  .lm-menu > li > a::before {
    left: 0 !important;
    right: auto !important;
    width: calc(100% - 18px) !important;
  }

  /* dropdown arrow centered vertically to text */
  .lm-menu > li.menu-item-has-children > a {
    padding-right: 18px !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    position: absolute !important;
    right: 0 !important;
    left: auto !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    margin-left: 0 !important;
    transform: translateY(-50%) rotate(45deg) !important;
    transform-origin: center center !important;
    display: block !important;
  }

  /* third level arrow stays on right and centered */
  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 34px !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    position: absolute !important;
    right: 14px !important;
    left: auto !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    transform: translateY(-50%) rotate(45deg) !important;
    transform-origin: center center !important;
    display: block !important;
  }

  /* hover/focus keeps only text underline */
  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a,
  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  /* ensure hover opens dropdown off the li area */
  .lm-menu li:hover > .sub-menu,
  .lm-menu li:focus-within > .sub-menu {
    display: block !important;
  }
}


/* ===== v29 menu typography + perfectly centered arrows ===== */
@media (min-width: 981px) {
  .lm-menu > li > a {
    font-size: clamp(0.82rem, 0.9vw, 0.98rem) !important;
    line-height: 1.15 !important;
    letter-spacing: 0.035em !important;
    font-weight: 700 !important;
    padding-right: 22px !important;
  }

  .lm-menu > li.menu-item-has-children > a,
  .lm-menu .sub-menu > li.menu-item-has-children > a {
    display: inline-flex !important;
    align-items: center !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    position: absolute !important;
    right: 0 !important;
    left: auto !important;
    top: 50% !important;
    width: 10px !important;
    height: 10px !important;
    margin: 0 !important;
    border-right: 1.8px solid currentColor !important;
    border-bottom: 1.8px solid currentColor !important;
    border-top: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) rotate(45deg) !important;
    transform-origin: center center !important;
    display: block !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 34px !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    position: absolute !important;
    right: 14px !important;
    left: auto !important;
    top: 50% !important;
    width: 10px !important;
    height: 10px !important;
    margin: 0 !important;
    border-right: 1.8px solid currentColor !important;
    border-top: 1.8px solid currentColor !important;
    border-bottom: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) rotate(45deg) !important;
    transform-origin: center center !important;
    display: block !important;
  }
}


/* ===== v30 desktop menu font + arrow clipping fix ===== */
@media (min-width: 981px) {
  .lm-menu > li > a {
    font-size: clamp(0.90rem, 0.98vw, 1.06rem) !important;
    line-height: 1.14 !important;
    letter-spacing: 0.03em !important;
    padding-right: 28px !important;
    overflow: visible !important;
    text-overflow: initial !important;
  }

  .lm-menu > li {
    overflow: visible !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    right: 2px !important;
    width: 12px !important;
    height: 12px !important;
    border-right: 2px solid currentColor !important;
    border-bottom: 2px solid currentColor !important;
    transform: translateY(-50%) rotate(45deg) !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 40px !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    right: 14px !important;
    width: 12px !important;
    height: 12px !important;
    border-right: 2px solid currentColor !important;
    border-top: 2px solid currentColor !important;
    transform: translateY(-50%) rotate(45deg) !important;
  }
}


/* ===== v31 menu width by content + closer arrows ===== */
@media (min-width: 981px) {
  .lm-menu {
    justify-content: center !important;
    gap: clamp(12px, 1vw, 22px) !important;
    width: auto !important;
    margin: 0 auto !important;
  }

  .lm-menu > li {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    display: block !important;
    overflow: visible !important;
  }

  .lm-menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 6px 14px 8px 0 !important;
    font-size: clamp(0.80rem, 0.88vw, 0.94rem) !important;
    line-height: 1.12 !important;
    letter-spacing: 0.03em !important;
    overflow: visible !important;
    text-overflow: initial !important;
    white-space: normal !important;
  }

  .lm-menu > li.menu-item-has-children > a {
    padding-right: 16px !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    right: 1px !important;
    width: 10px !important;
    height: 10px !important;
    border-right: 1.8px solid currentColor !important;
    border-bottom: 1.8px solid currentColor !important;
  }

  .lm-menu > li > a::before {
    width: calc(100% - 16px) !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 28px !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    right: 10px !important;
    width: 10px !important;
    height: 10px !important;
    border-right: 1.8px solid currentColor !important;
    border-top: 1.8px solid currentColor !important;
  }
}


/* ===== v32 final menu polish ===== */
@media (min-width: 981px) {

  /* smaller font */
  .lm-menu > li > a {
    font-size: clamp(0.68rem, 0.78vw, 0.82rem) !important;
    line-height: 1.1 !important;
    padding-right: 14px !important;
  }

  /* perfect vertical centering arrow */
  .lm-menu > li.menu-item-has-children > a {
    display: inline-flex !important;
    align-items: center !important;
    position: relative !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    top: 50% !important;
    transform: translateY(-50%) rotate(45deg) !important;
    width: 9px !important;
    height: 9px !important;
    right: 2px !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    top: 50% !important;
    transform: translateY(-50%) rotate(45deg) !important;
  }

  /* hover = immediate dropdown (no click) */
  .lm-menu li {
    position: relative !important;
  }

  .lm-menu li > .sub-menu {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity .2s ease !important;
  }

  .lm-menu li:hover > .sub-menu {
    display: block !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /* remove any click-only behavior leftovers */
  .lm-menu li > a {
    pointer-events: auto !important;
  }
}


/* ===== v33 nav stability + smaller desktop type ===== */
@media (min-width: 981px) {
  /* slightly smaller top-level font */
  .lm-menu > li > a {
    font-size: clamp(0.62rem, 0.72vw, 0.76rem) !important;
    line-height: 1.08 !important;
  }

  /* move first-level arrows 2px up and 2px right */
  .lm-menu > li.menu-item-has-children > a::after {
    right: 4px !important;
    transform: translateY(calc(-50% - 2px)) rotate(45deg) !important;
  }

  /* keep submenu bridge so hover doesn't randomly close */
  .lm-menu > li {
    position: relative !important;
  }

  .lm-menu > li > .sub-menu {
    margin-top: 0 !important;
    top: calc(100% + 10px) !important;
  }

  .lm-menu > li > .sub-menu::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: -14px !important;
    height: 14px !important;
    background: transparent !important;
    display: block !important;
  }

  /* keep second/third level connection stable too */
  .lm-menu .sub-menu > li {
    position: relative !important;
  }

  .lm-menu .sub-menu > li > .sub-menu {
    margin-left: 0 !important;
    left: calc(100% + 10px) !important;
  }

  .lm-menu .sub-menu > li > .sub-menu::before {
    content: "" !important;
    position: absolute !important;
    left: -14px !important;
    top: 0 !important;
    width: 14px !important;
    height: 100% !important;
    background: transparent !important;
    display: block !important;
  }

  /* stable open states */
  .lm-menu li:hover > .sub-menu,
  .lm-menu li:focus-within > .sub-menu,
  .lm-menu > li > .sub-menu:hover,
  .lm-menu .sub-menu > li > .sub-menu:hover {
    display: block !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /* underline must stay inside white card bounds */
  .lm-menu .sub-menu a::before,
  .lm-menu > li > a::before {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .lm-menu .sub-menu a::before {
    left: 0 !important;
    right: auto !important;
    width: calc(100% - 24px) !important;
    bottom: 8px !important;
  }

  .lm-menu .sub-menu a {
    overflow: visible !important;
    position: relative !important;
  }
}


/* ===== v34 underline limited to text + 2-line no-word-break ===== */

/* underline only under text content for every menu level */
.lm-menu > li > a,
.lm-menu .sub-menu a {
  display: inline-flex !important;
  align-items: center !important;
  position: relative !important;
  width: auto !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
  hyphens: none !important;
  text-wrap: balance !important;
}

.lm-menu > li > a::before,
.lm-menu .sub-menu a::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: auto !important;
  bottom: 8px !important;
  width: calc(100% - 24px) !important;
  max-width: calc(100% - 24px) !important;
  height: 1px !important;
  background: var(--accent) !important;
  opacity: 0 !important;
  transform: scaleX(0.35) !important;
  transform-origin: left center !important;
  transition: opacity .18s ease, transform .18s ease !important;
  box-shadow: none !important;
  pointer-events: none !important;
}

.lm-menu > li:hover > a::before,
.lm-menu > li:focus-within > a::before,
.lm-menu > li.current-menu-item > a::before,
.lm-menu > li.current-menu-ancestor > a::before,
.lm-menu .sub-menu li:hover > a::before,
.lm-menu .sub-menu li:focus-within > a::before,
.lm-menu .sub-menu li.current-menu-item > a::before,
.lm-menu .sub-menu li.current-menu-ancestor > a::before {
  opacity: 1 !important;
  transform: scaleX(1) !important;
}

/* submenu links: underline can never exceed the white card */
.lm-menu .sub-menu a {
  padding-right: 24px !important;
}

.lm-menu .sub-menu a::before {
  bottom: 8px !important;
  width: calc(100% - 24px) !important;
  max-width: calc(100% - 24px) !important;
}

/* desktop: max 2 lines, no word breaking */
@media (min-width: 981px) {
  .lm-menu > li > a {
    display: -webkit-inline-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-wrap: balance !important;
    hyphens: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 170px !important;
  }
}

/* mobile/tablet: max 2 lines, no broken words */
@media (max-width: 980px) {
  .lm-menu > li > a,
  .lm-menu .sub-menu a {
    display: -webkit-inline-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-wrap: balance !important;
    hyphens: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: calc(100% - 40px) !important;
  }

  .lm-menu > li > a::before,
  .lm-menu .sub-menu a::before {
    width: calc(100% - 24px) !important;
    max-width: calc(100% - 24px) !important;
  }
}


/* ===== v35 final fixes: single underline + arrow offset ===== */

/* remove any duplicate underline effects */
.lm-menu a::after {
  display: none !important;
  content: none !important;
}

/* keep only one underline (controlled by ::before) */
.lm-menu a::before {
  height: 1px !important;
  box-shadow: none !important;
}

/* ensure underline never exceeds white card */
.lm-menu .sub-menu a::before {
  left: 0 !important;
  right: auto !important;
  width: calc(100% - 24px) !important;
  max-width: calc(100% - 24px) !important;
}

/* arrow positioning – move +5px right and +5px up */
.lm-menu .menu-item-has-children > a .lm-caret {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 5px !important;
  transform: translate(5px, -5px) !important;
  position: relative !important;
}

/* make sure arrow aligns vertically with text */
.lm-menu .menu-item-has-children > a {
  align-items: center !important;
}

/* prevent clipping */
.lm-menu > li {
  overflow: visible !important;
}


/* === FINAL ARROW ALIGN FIX === */

.lm-menu > li > a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  line-height: 1.2 !important;
}

.lm-menu .menu-item-has-children > a .lm-caret,
.lm-menu .menu-item-has-children > a::after {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 14px !important;
  height: 14px !important;

  margin-left: 6px !important;

  position: relative !important;
  top: 0 !important;
  transform: none !important;

  line-height: 1 !important;
  font-size: 12px !important;
}

/* fix bold breaking alignment */
.lm-menu a b {
  font-weight: inherit !important;
  display: inline !important;
}


/* === v37 replace skewed arrows with clean SVG chevrons === */
@media (min-width: 981px) {
  .lm-menu > li > a,
  .lm-menu .sub-menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    line-height: 1.15 !important;
  }

  .lm-menu > li.menu-item-has-children > a,
  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 0 !important;
  }

  .lm-menu > li.menu-item-has-children > a::after,
  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    margin: 0 0 0 2px !important;
    width: 12px !important;
    height: 12px !important;
    flex: 0 0 12px !important;
    display: inline-block !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 12px 12px !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    opacity: .95 !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><path d='M2.25 4.25 6 8l3.75-3.75' fill='none' stroke='%23712289' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><path d='M4 2.25 7.75 6 4 9.75' fill='none' stroke='%23712289' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;
  }
}

@media (max-width: 980px) {
  .lm-submenu-toggle {
    width: 30px !important;
    height: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .lm-submenu-toggle span[aria-hidden="true"] {
    width: 12px !important;
    height: 12px !important;
    border: 0 !important;
    transform: none !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 12px 12px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><path d='M2.25 4.25 6 8l3.75-3.75' fill='none' stroke='%23712289' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  .lm-menu li.is-submenu-open > .lm-submenu-toggle span[aria-hidden="true"] {
    transform: rotate(180deg) !important;
  }
}


/* === v38 responsive header/nav layout fix === */
@media (min-width: 981px) {
  .lm-site-header__inner {
    display: grid !important;
    grid-template-columns: auto minmax(0,1fr) auto !important;
    align-items: center !important;
    column-gap: 24px !important;
  }

  .lm-logo-image-link {
    position: relative !important;
    z-index: 3 !important;
    flex: 0 0 auto !important;
  }

  .lm-nav-panel,
  .lm-main-nav {
    min-width: 0 !important;
    width: 100% !important;
    position: relative !important;
    z-index: 2 !important;
  }

  .lm-nav-panel {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
  }

  .lm-menu {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: clamp(8px, 0.9vw, 18px) !important;
    margin: 0 auto !important;
  }

  .lm-menu > li {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
  }

  .lm-menu > li > a {
    white-space: nowrap !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: initial !important;
  }

  .lm-header-actions {
    position: relative !important;
    z-index: 3 !important;
    justify-self: end !important;
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex: 0 0 auto !important;
  }

  .lm-header-actions .lm-header-icon {
    flex: 0 0 auto !important;
  }
}

/* intermediate widths: shrink menu before it collides */
@media (min-width: 981px) and (max-width: 1400px) {
  .lm-site-header__inner {
    column-gap: 16px !important;
  }

  .lm-menu {
    gap: clamp(6px, 0.6vw, 12px) !important;
  }

  .lm-menu > li > a {
    font-size: clamp(0.68rem, 0.72vw, 0.82rem) !important;
    letter-spacing: 0.02em !important;
  }

  .lm-logo-image {
    height: 30px !important;
    max-width: 180px !important;
  }

  .lm-header-actions .lm-header-icon {
    width: 44px !important;
    height: 44px !important;
  }
}

/* if viewport is tighter, switch to mobile/hamburger earlier */
@media (max-width: 1180px) {
  .lm-site-header__inner {
    grid-template-columns: auto 1fr auto auto !important;
    column-gap: 8px !important;
  }

  .lm-nav-panel {
    display: none !important;
    position: fixed !important;
    inset: calc(var(--lm-topbar-height) + 64px) 0 0 0 !important;
    width: 100vw !important;
    height: calc(100svh - (var(--lm-topbar-height) + 64px)) !important;
    max-height: calc(100svh - (var(--lm-topbar-height) + 64px)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 18px 16px 36px !important;
    background: rgba(252,251,253,0.995) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border-top: 1px solid rgba(17,17,17,0.06) !important;
    z-index: 1000 !important;
  }

  .lm-site-header.is-menu-open .lm-nav-panel {
    display: block !important;
  }

  .lm-main-nav,
  .lm-menu {
    width: 100% !important;
  }

  .lm-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
  }

  .lm-menu > li,
  .lm-menu .sub-menu li {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    column-gap: 10px !important;
    width: 100% !important;
  }

  .lm-menu > li > a,
  .lm-menu .sub-menu a {
    max-width: none !important;
    width: 100% !important;
    white-space: normal !important;
    overflow: hidden !important;
  }

  .lm-menu-toggle {
    display: inline-flex !important;
    z-index: 1002 !important;
  }

  .lm-header-actions {
    z-index: 1002 !important;
  }
}


/* ===== v39b disable redundant theme popup; use Quick Cross-Sells instead ===== */
.lm-added-popup {
  display: none !important;
}


/* ===== v40 Quick Cross-Sells popup UX ===== */
.lm-has-crosssell-popup .wcqcs-cross-sells-section-title,
.lm-has-crosssell-popup .wcqcs-cross-sells {
  display: none !important;
}

.lm-qcqs-popup {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
}

.lm-qcqs-popup.is-visible {
  display: block;
}

.lm-qcqs-popup__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(25, 18, 31, 0.34);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.lm-qcqs-popup__dialog {
  position: relative;
  width: min(1120px, calc(100% - 32px));
  max-height: min(88vh, 960px);
  overflow: auto;
  margin: min(5vh, 44px) auto;
  border-radius: 34px;
  padding: 34px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.86) 100%),
    linear-gradient(135deg, rgba(216,185,225,0.12) 0%, rgba(113,34,137,0.05) 100%);
  border: 1px solid rgba(255,255,255,0.58);
  box-shadow: 0 30px 70px rgba(78,15,88,0.16);
}

.lm-qcqs-popup__close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 1px solid rgba(17,17,17,0.08);
  background: rgba(255,255,255,0.72);
  color: var(--accent-dark);
  font-size: 1.7rem;
  cursor: pointer;
}

.lm-qcqs-popup__eyebrow {
  font-size: .74rem;
  text-transform: uppercase;
  letter-spacing: .16em;
  color: var(--accent);
  font-weight: 700;
  margin-bottom: 10px;
}

.lm-qcqs-popup__title {
  font-family: var(--font-sans);
  font-size: clamp(2rem, 3.4vw, 3.4rem);
  line-height: 1;
  margin: 0 0 14px;
}

.lm-qcqs-popup__desc {
  margin: 0 0 24px;
  font-size: 1rem;
  line-height: 1.7;
  color: rgba(17,17,17,0.68);
  max-width: 720px;
}

.lm-qcqs-popup__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.lm-qcqs-card {
  display: grid;
  grid-template-columns: 42px 92px 1fr;
  align-items: center;
  gap: 18px;
  padding: 18px 20px;
  border-radius: 28px;
  background: rgba(255,255,255,0.82);
  border: 1px solid rgba(17,17,17,0.08);
  box-shadow: 0 16px 34px rgba(78,15,88,0.06);
  cursor: pointer;
  text-decoration: none;
}

.lm-qcqs-card__check {
  display: flex;
  align-items: center;
  justify-content: center;
}

.lm-qcqs-card__checkbox {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.lm-qcqs-card__fakecheck {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  border: 2px solid rgba(17,17,17,0.36);
  background: #fff;
  position: relative;
}

.lm-qcqs-card__checkbox:checked + .lm-qcqs-card__fakecheck {
  border-color: var(--accent);
  background: rgba(113,34,137,0.10);
}

.lm-qcqs-card__checkbox:checked + .lm-qcqs-card__fakecheck::after {
  content: "";
  position: absolute;
  left: 8px;
  top: 3px;
  width: 7px;
  height: 14px;
  border-right: 2px solid var(--accent-dark);
  border-bottom: 2px solid var(--accent-dark);
  transform: rotate(45deg);
}

.lm-qcqs-card__image {
  width: 92px;
  height: 92px;
  border-radius: 22px;
  overflow: hidden;
  display: block;
  background: #fff;
}

.lm-qcqs-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lm-qcqs-card__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.lm-qcqs-card__title {
  text-decoration: none;
  font-size: clamp(1.05rem, 1.4vw, 1.55rem);
  line-height: 1.2;
  color: #111;
  font-weight: 500;
}

.lm-qcqs-card__price .price,
.lm-qcqs-card__price {
  color: #9a8d24;
  font-size: clamp(1.15rem, 1.6vw, 1.8rem);
  line-height: 1;
}

.lm-qcqs-card__price del {
  opacity: .55;
  margin-right: 8px;
}

.lm-qcqs-popup__actions {
  display: flex;
  gap: 14px;
  justify-content: flex-start;
  margin-top: 26px;
  flex-wrap: wrap;
}

body.lm-qcqs-popup-open {
  overflow: hidden;
}

@media (max-width: 900px) {
  .lm-qcqs-popup__dialog {
    width: calc(100% - 16px);
    padding: 24px 18px 20px;
    border-radius: 24px;
    margin: 10px auto;
  }

  .lm-qcqs-popup__cards {
    grid-template-columns: 1fr;
  }

  .lm-qcqs-card {
    grid-template-columns: 34px 72px 1fr;
    gap: 14px;
    padding: 14px;
    border-radius: 22px;
  }

  .lm-qcqs-card__image {
    width: 72px;
    height: 72px;
    border-radius: 16px;
  }

  .lm-qcqs-card__title {
    font-size: 1rem;
  }

  .lm-qcqs-card__price .price,
  .lm-qcqs-card__price {
    font-size: 1.25rem;
  }
}


/* ===== v42 rock-solid infinite scroll ===== */
.lm-archive-grid {
  min-height: 1px;
}
.lm-archive-loadmore-wrap {
  margin: 26px 0 34px;
}
.lm-archive-loadmore {
  min-height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(113,34,137,0.10);
  background: rgba(255,255,255,0.62);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: opacity .25s ease, transform .25s ease;
}
.lm-archive-loadmore.is-loading {
  opacity: 0.95;
}
.lm-archive-loadmore__label {
  font-size: .88rem;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--accent-dark);
  font-weight: 700;
}
.lm-card-enter {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .35s ease, transform .35s ease;
}
.lm-card-enter.is-visible {
  opacity: 1;
  transform: translateY(0);
}


/* ===== v44 variants collapse + related drag + qty controls ===== */
.lm-variant-mini-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 18px;
  overflow: hidden;
  transition: max-height .35s ease;
}

.lm-variant-mini-grid.is-collapsed {
  overflow: hidden;
}

.lm-variant-mini {
  width: 100%;
  aspect-ratio: 1 / 1;
  min-width: 0;
}

.lm-variants-more {
  margin-top: 18px;
  background: rgba(255,255,255,0.72);
  color: var(--accent-dark);
  border: 1px solid rgba(113,34,137,0.12);
}

@media (max-width: 1200px) {
  .lm-variant-mini-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
}
@media (max-width: 980px) {
  .lm-variant-mini-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
  .lm-variants-more { width: 100%; }
}
@media (max-width: 640px) {
  .lm-variant-mini-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
}

/* related scroller mouse drag */
.lm-related-scroller {
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
}
.lm-related-scroller.is-dragging {
  cursor: grabbing;
}
.lm-related-scroller .arc-card {
  pointer-events: auto;
}

/* add to cart row */
.lm-cart-row {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: nowrap;
}
.lm-cart-row .quantity.lm-qty-enhanced {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.lm-cart-row .quantity.lm-qty-enhanced .qty {
  order: 2;
  width: 72px;
  height: 72px;
  min-height: 72px;
  border-radius: 50%;
  border: 1px solid rgba(17,17,17,0.12);
  text-align: center;
  padding: 0;
  font-size: 1.6rem;
  background: rgba(255,255,255,0.82);
  appearance: textfield;
  -moz-appearance: textfield;
}
.lm-cart-row .quantity.lm-qty-enhanced .qty::-webkit-outer-spin-button,
.lm-cart-row .quantity.lm-qty-enhanced .qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.lm-qty-btn {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  border: 1px solid rgba(17,17,17,0.12);
  background: rgba(255,255,255,0.82);
  color: var(--accent-dark);
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
}
.lm-cart-row .quantity.lm-qty-enhanced .lm-qty-btn--minus { order: 1; }
.lm-cart-row .quantity.lm-qty-enhanced .lm-qty-btn--plus { order: 3; }

/* add to cart button like archive/category */
.lm-add-to-cart.button.alt,
.single_add_to_cart_button.lm-add-to-cart,
.single-product .single_add_to_cart_button {
  min-height: 56px;
  padding: 0 26px;
  border-radius: 999px;
  border: 1px solid rgba(17,17,17,0.10);
  background: rgba(255,255,255,0.82);
  color: var(--accent-dark);
  box-shadow: none;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: .86rem;
  font-weight: 700;
}
.lm-add-to-cart.button.alt:hover,
.single_add_to_cart_button.lm-add-to-cart:hover,
.single-product .single_add_to_cart_button:hover {
  background: rgba(255,255,255,0.96);
}

@media (max-width: 980px) {
  .lm-cart-row {
    flex-wrap: wrap;
  }
  .lm-cart-row .quantity.lm-qty-enhanced {
    width: 100%;
    justify-content: flex-start;
  }
  .lm-qty-btn,
  .lm-cart-row .quantity.lm-qty-enhanced .qty {
    width: 60px;
    height: 60px;
    min-height: 60px;
    font-size: 1.35rem;
  }
}


/* ===== v45 variant thumbnails keep full image and title spacing ===== */
.lm-product-block--variants-under-title {
  overflow: visible !important;
}

.lm-product-block--variants-under-title .lm-product-block-title,
.lm-product-block--variants-under-title .lm-section-heading,
.lm-product-block--variants-under-title h2,
.lm-product-block--variants-under-title h3 {
  margin-bottom: 20px !important;
  position: relative !important;
  z-index: 2 !important;
}

.lm-variant-mini-grid {
  margin-top: 0 !important;
  align-items: start !important;
}

.lm-variant-mini {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  padding: 12px !important;
  background: rgba(255,255,255,0.82) !important;
  box-sizing: border-box !important;
}

.lm-variant-mini img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 12px !important;
}

@media (max-width: 980px) {
  .lm-product-block--variants-under-title .lm-product-block-title,
  .lm-product-block--variants-under-title .lm-section-heading,
  .lm-product-block--variants-under-title h2,
  .lm-product-block--variants-under-title h3 {
    margin-bottom: 16px !important;
  }

  .lm-variant-mini {
    padding: 20px !important;
  }
}


/* ===== v47 variant section final layout ===== */
.lm-product-block--variants-under-title {
  overflow: visible !important;
}

.lm-product-block--variants-under-title .lm-product-block-title {
  display: block !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 3 !important;
  line-height: 1.1 !important;
}

.lm-variant-mini-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 18px !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  overflow: hidden !important;
  transition: max-height .35s ease !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.lm-variant-mini {
  flex: 0 0 148px !important;
  width: 148px !important;
  height: 148px !important;
  min-width: 148px !important;
  min-height: 148px !important;
  max-width: 148px !important;
  max-height: 148px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  padding: 12px !important;
  border-radius: 28px !important;
  border: 1px solid rgba(17,17,17,0.10) !important;
  background: rgba(255,255,255,0.82) !important;
  box-shadow: 0 6px 18px rgba(78,15,88,0.05) !important;
  box-sizing: border-box !important;
  aspect-ratio: 1 / 1 !important;
}

.lm-variant-mini img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  border-radius: 14px !important;
}

.lm-variants-more {
  display: inline-flex !important;
  margin-top: 22px !important;
  min-height: 56px !important;
  padding: 0 28px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(17,17,17,0.10) !important;
  background: rgba(255,255,255,0.82) !important;
  color: var(--accent-dark) !important;
  box-shadow: none !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-size: .86rem !important;
  font-weight: 700 !important;
}
.lm-variants-more:hover {
  background: rgba(255,255,255,0.96) !important;
}

@media (max-width: 980px) {
  .lm-product-block--variants-under-title .lm-product-block-title {
    margin-bottom: 20px !important;
  }

  .lm-variant-mini-grid {
    gap: 14px !important;
  }

  .lm-variant-mini {
    flex: 0 0 126px !important;
    width: 126px !important;
    height: 126px !important;
    min-width: 126px !important;
    min-height: 126px !important;
    max-width: 126px !important;
    max-height: 126px !important;
    padding: 20px !important;
  }

  .lm-variants-more {
    width: auto !important;
    max-width: 100% !important;
  }
}

@media (max-width: 640px) {
  .lm-variant-mini {
    flex: 0 0 112px !important;
    width: 112px !important;
    height: 112px !important;
    min-width: 112px !important;
    min-height: 112px !important;
    max-width: 112px !important;
    max-height: 112px !important;
  }
}


/* ===== v48 variants: 6 per row desktop, image fills frame ===== */
.lm-variant-mini-grid {
  gap: 18px !important;
}

@media (min-width: 981px) {
  .lm-variant-mini-grid {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  .lm-variant-mini {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    padding: 20px !important;
  }
}

.lm-variant-mini img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

@media (max-width: 980px) {
  .lm-variant-mini-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  .lm-variant-mini {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    padding: 8px !important;
  }
}

@media (max-width: 640px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}


/* ===== v49 perfect square + centered image ===== */
@media (min-width: 981px) {
  .lm-variant-mini-grid {
    display: grid !important;
    grid-template-columns: repeat(6, 1fr) !important;
  }
}

.lm-variant-mini {
  aspect-ratio: 1 / 1 !important;
  width: 100% !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px !important;
}

.lm-variant-mini img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
}


/* ===== v50 enforce PERFECT square tiles (container + image) ===== */
.lm-variant-mini {
  aspect-ratio: 1 / 1 !important;
  width: 100% !important;
  height: auto !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px !important;
  box-sizing: border-box !important;
}

/* hard square fallback */
.lm-variant-mini::before {
  content: "";
  display: block;
  padding-top: 100%;
}

.lm-variant-mini > * {
  position: absolute;
  inset: 0;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px !important;
}

.lm-variant-mini img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* grid keeps proportions */
@media (min-width: 981px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(6, 1fr) !important;
  }
}

@media (max-width: 980px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(4, 1fr) !important;
  }
}

@media (max-width: 640px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}


/* ===== v51 clean square variants grid ===== */
.lm-product-block--variants-under-title {
  overflow: visible !important;
}

.lm-product-block--variants-under-title .lm-product-block-title {
  display: block !important;
  margin: 0 0 22px !important;
  line-height: 1.1 !important;
  position: relative !important;
  z-index: 2 !important;
}

.lm-variant-mini-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  overflow: hidden !important;
  transition: max-height .32s ease !important;
  margin: 0 !important;
  padding: 0 !important;
}

.lm-variant-mini {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  border: 1px solid rgba(17,17,17,0.10) !important;
  background: rgba(255,255,255,0.86) !important;
  box-shadow: 0 6px 18px rgba(78,15,88,0.05) !important;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease !important;
}

.lm-variant-mini img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

.lm-variant-mini:hover,
.lm-variant-mini:focus-visible {
  border-color: rgba(113,34,137,0.48) !important;
  box-shadow: 0 8px 22px rgba(78,15,88,0.08), inset 0 0 0 1px rgba(113,34,137,0.18) !important;
  transform: translateY(-1px) !important;
}

.lm-variant-mini.is-current {
  border-color: var(--accent) !important;
  box-shadow: 0 10px 22px rgba(78,15,88,0.08), inset 0 0 0 1px rgba(113,34,137,0.22) !important;
}

.lm-variants-more {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 20px !important;
  margin-top: 18px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(17,17,17,0.10) !important;
  background: rgba(255,255,255,0.82) !important;
  color: var(--accent-dark) !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-size: .8rem !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}
.lm-variants-more:hover {
  background: rgba(255,255,255,0.96) !important;
}

@media (max-width: 980px) {
  .lm-product-block--variants-under-title .lm-product-block-title {
    margin-bottom: 18px !important;
  }

  .lm-variant-mini-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .lm-variant-mini {
    border-radius: 18px !important;
  }

  .lm-variants-more {
    width: auto !important;
    max-width: 100% !important;
  }
}


/* ===== v52 spacing for variants grid on desktop and mobile ===== */
.lm-variant-mini-grid {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}


/* ===== v54 columns update ===== */
.lm-variant-mini-grid {
  grid-template-columns: repeat(6, 1fr) !important;
}

@media (max-width: 980px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(4, 1fr) !important;
  }
}


/* ===== v55 spacing under variants title ===== */
.lm-product-block-title {
  margin-bottom: 10px !important;
}


/* ===== v56 final fix: clean variants grid 6/4, square tiles, no inner padding ===== */
.lm-product-block--variants-under-title .lm-product-block-title {
  margin-bottom: 10px !important;
}

.lm-variant-mini-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin-top: 10px !important;
  margin-bottom: 10px !important;
  padding: 0 !important;
  align-items: stretch !important;
  align-content: start !important;
}

.lm-variant-mini-grid.is-collapsed {
  overflow: hidden !important;
}

.lm-variant-mini {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 1 / 1 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  border: 1px solid rgba(17,17,17,0.10) !important;
  background: rgba(255,255,255,0.86) !important;
  box-shadow: 0 6px 18px rgba(78,15,88,0.05) !important;
  box-sizing: border-box !important;
}

.lm-variant-mini::before,
.lm-variant-mini::after {
  content: none !important;
  display: none !important;
}

.lm-variant-mini > * {
  position: static !important;
  inset: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

.lm-variant-mini img {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  border-radius: 0 !important;
}

.lm-variant-mini:hover,
.lm-variant-mini:focus-visible {
  border-color: rgba(113,34,137,0.42) !important;
  box-shadow: 0 8px 22px rgba(78,15,88,0.08), inset 0 0 0 1px rgba(113,34,137,0.14) !important;
}

.lm-variant-mini.is-current {
  border-color: var(--accent) !important;
  box-shadow: 0 10px 22px rgba(78,15,88,0.08), inset 0 0 0 1px rgba(113,34,137,0.20) !important;
}

@media (max-width: 980px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}


/* ===== v59 restore qty circles and robust variants button ===== */
.lm-cart-row {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  flex-wrap: nowrap !important;
}

form.cart .quantity.lm-qty-enhanced,
.woocommerce div.product form.cart .quantity.lm-qty-enhanced {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  float: none !important;
  margin: 0 !important;
}

form.cart .quantity.lm-qty-enhanced .qty,
.woocommerce div.product form.cart .quantity.lm-qty-enhanced .qty {
  order: 2 !important;
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  min-height: 72px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  border: 1px solid rgba(17,17,17,0.12) !important;
  background: rgba(255,255,255,0.82) !important;
  text-align: center !important;
  font-size: 1.55rem !important;
  font-weight: 600 !important;
  color: #111 !important;
  box-sizing: border-box !important;
  appearance: textfield !important;
  -moz-appearance: textfield !important;
}

form.cart .quantity.lm-qty-enhanced .qty::-webkit-outer-spin-button,
form.cart .quantity.lm-qty-enhanced .qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.lm-qty-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  min-height: 72px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  border: 1px solid rgba(17,17,17,0.12) !important;
  background: rgba(255,255,255,0.82) !important;
  color: var(--accent-dark) !important;
  font-size: 2rem !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}

.lm-qty-btn:hover {
  background: rgba(255,255,255,0.96) !important;
  border-color: rgba(113,34,137,0.24) !important;
}

.lm-qty-btn--minus { order: 1 !important; }
.lm-qty-btn--plus { order: 3 !important; }

@media (max-width: 980px) {
  .lm-cart-row {
    flex-wrap: wrap !important;
  }

  form.cart .quantity.lm-qty-enhanced,
  .woocommerce div.product form.cart .quantity.lm-qty-enhanced {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  .lm-qty-btn,
  form.cart .quantity.lm-qty-enhanced .qty,
  .woocommerce div.product form.cart .quantity.lm-qty-enhanced .qty {
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    min-height: 60px !important;
    font-size: 1.3rem !important;
  }
}


.lm-variants-more[hidden] {
  display: none !important;
}


/* ===== v63 very small mobile fix for variants section ===== */
.lm-variant-mini-grid.is-collapsed {
  overflow: hidden !important;
}

@media (max-width: 520px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .lm-variant-mini {
    border-radius: 16px !important;
  }

  .lm-variants-more {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ===== v64 very small screens: only first row visible before expand ===== */
@media (max-width: 520px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .lm-variant-mini-grid.is-collapsed {
    overflow: hidden !important;
  }

  .lm-variants-more {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ===== v65 strong small-screen variants layout ===== */
@media (max-width: 520px) {
  .lm-variant-mini-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: 1fr !important;
    gap: 10px !important;
  }

  .lm-variant-mini {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
  }

  .lm-variant-mini-grid.is-collapsed {
    overflow: hidden !important;
  }

  .lm-variants-more {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ===== v66 hard fix: no overlapping variant tiles on small screens ===== */
@media (max-width: 520px) {
  .lm-product-block--variants-under-title {
    overflow: visible !important;
  }

  .lm-variant-mini-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    grid-auto-rows: auto !important;
    gap: 10px !important;
    align-items: stretch !important;
    align-content: start !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    padding: 0 !important;
  }

  .lm-variant-mini-grid.is-collapsed {
    overflow: hidden !important;
  }

  .lm-variant-mini {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 1 / 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    box-sizing: border-box !important;
    flex: none !important;
    transform: none !important;
  }

  .lm-variant-mini::before,
  .lm-variant-mini::after {
    content: none !important;
    display: none !important;
  }

  .lm-variant-mini > * {
    position: static !important;
    inset: auto !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .lm-variant-mini img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
    transform: none !important;
  }

  .lm-variants-more {
    width: 100% !important;
    justify-content: center !important;
    margin-top: 14px !important;
  }
}


/* ===== v67 CLEAN mobile variants grid: one row + button, then full grid ===== */
.lm-product-block--variants-under-title {
  overflow: visible !important;
}

.lm-product-block--variants-under-title .lm-product-block-title {
  margin-bottom: 10px !important;
}

.lm-variant-mini-grid {
  display: grid !important;
  gap: 16px !important;
  align-items: stretch !important;
  align-content: start !important;
  grid-auto-flow: row !important;
  grid-auto-rows: auto !important;
  overflow: hidden !important;
  transition: max-height .28s ease !important;
}

.lm-variant-mini-grid.is-collapsed {
  overflow: hidden !important;
}

.lm-variant-mini {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  aspect-ratio: 1 / 1 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  border-radius: 20px !important;
  box-sizing: border-box !important;
}

.lm-variant-mini img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

@media (min-width: 981px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 980px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}

@media (max-width: 520px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .lm-variants-more {
    width: 100% !important;
    justify-content: center !important;
  }
}

.lm-variants-more[hidden] {
  display: none !important;
}


/* ===== v68 product breadcrumbs ===== */
.lm-product-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
}

.lm-product-breadcrumb {
  font-size: 0.78rem;
  line-height: 1.2;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--accent);
  text-decoration: none;
  transition: opacity .2s ease;
}

.lm-product-breadcrumb:hover {
  opacity: .72;
}

.lm-product-breadcrumb.is-current {
  color: var(--accent);
}

.lm-product-breadcrumb-sep {
  font-size: 0.72rem;
  color: rgba(113,34,137,0.45);
}

@media (max-width: 640px) {
  .lm-product-breadcrumbs {
    gap: 6px;
    margin-bottom: 14px;
  }

  .lm-product-breadcrumb {
    font-size: 0.7rem;
    letter-spacing: 0.12em;
  }
}


/* ===== v69 breadcrumbs line style restore ===== */
.lm-product-breadcrumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
  position: relative;
}

.lm-product-breadcrumbs::before {
  content: '';
  display: inline-block;
  width: 28px;
  height: 2px;
  background: var(--accent);
  margin-right: 10px;
}

.lm-product-breadcrumb {
  font-size: 0.78rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--accent);
  text-decoration: none;
}

.lm-product-breadcrumb-sep {
  opacity: 0.5;
  font-size: 0.7rem;
}

@media (max-width: 640px) {
  .lm-product-breadcrumbs::before {
    width: 20px;
  }

  .lm-product-breadcrumb {
    font-size: 0.7rem;
    letter-spacing: 0.12em;
  }
}


/* ===== v70 clickable category kicker ===== */
.lm-product-kicker .lm-kicker-link {
  color: inherit;
  text-decoration: none;
  display: inline-block;
}
.lm-product-kicker .lm-kicker-link:hover {
  opacity: .78;
}


/* ===== v71 product gallery square, centered, zoom, purple active thumb ===== */
.lm-product-gallery-main {
  position: relative !important;
  aspect-ratio: 1 / 1 !important;
  width: 100% !important;
  overflow: hidden !important;
  border-radius: 28px !important;
}

.lm-product-gallery-main img,
.lm-product-gallery-main .wp-post-image,
.lm-product-gallery-main .woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
}

.lm-product-gallery-main::before,
.lm-product-gallery-main::after {
  content: none !important;
  display: none !important;
}

.lm-product-gallery-thumbs,
.lm-product-gallery-nav,
.lm-product-thumbs {
  align-items: stretch !important;
}

.lm-product-gallery-thumbs .is-active,
.lm-product-gallery-thumbs .is-current,
.lm-product-gallery-thumbs .active,
.lm-product-thumbs .is-active,
.lm-product-thumbs .is-current,
.lm-product-thumbs .active,
.lm-product-thumb.is-active,
.lm-product-thumb.is-current,
.lm-product-thumb.active,
.lm-product-gallery-thumbs button[aria-current="true"],
.lm-product-gallery-thumbs a[aria-current="true"] {
  border-color: var(--accent) !important;
  box-shadow: inset 0 0 0 1px rgba(113,34,137,0.18) !important;
  outline: none !important;
}

.lm-product-gallery-thumbs img,
.lm-product-thumb img {
  border-color: transparent !important;
}

.lm-product-gallery-thumbs button:focus,
.lm-product-gallery-thumbs a:focus,
.lm-product-thumb:focus {
  outline: none !important;
  box-shadow: 0 0 0 1px rgba(113,34,137,0.18) !important;
}

.lm-product-zoom-trigger {
  position: absolute !important;
  right: 16px !important;
  bottom: 16px !important;
  z-index: 4 !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(17,17,17,0.10) !important;
  background: rgba(255,255,255,0.92) !important;
  color: var(--accent-dark) !important;
  font-size: 1.35rem !important;
  line-height: 1 !important;
  cursor: pointer !important;
  backdrop-filter: blur(8px) !important;
}

.lm-product-zoom-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9999 !important;
  display: none !important;
}

.lm-product-zoom-modal.is-visible {
  display: block !important;
}

.lm-product-zoom-backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(16,12,18,0.72) !important;
  backdrop-filter: blur(5px) !important;
}

.lm-product-zoom-dialog {
  position: absolute !important;
  inset: 5vh 5vw !important;
  background: rgba(255,255,255,0.96) !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  box-shadow: 0 24px 80px rgba(0,0,0,0.28) !important;
}

.lm-product-zoom-stage {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 4vh 4vw !important;
}

.lm-product-zoom-stage img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
}

.lm-product-zoom-close {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 2 !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(17,17,17,0.10) !important;
  background: rgba(255,255,255,0.94) !important;
  color: var(--accent-dark) !important;
  font-size: 1.9rem !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

@media (max-width: 640px) {
  .lm-product-gallery-main {
    border-radius: 22px !important;
  }

  .lm-product-zoom-dialog {
    inset: 3vh 3vw !important;
    border-radius: 22px !important;
  }

  .lm-product-zoom-trigger {
    width: 42px !important;
    height: 42px !important;
    right: 12px !important;
    bottom: 12px !important;
  }
}


/* ===== v72 pricing and archive cleanup ===== */
.lm-product-price,
.lm-product-price .price,
.single-product .price,
.single-product .summary .price {
  color: var(--accent) !important;
  font-weight: 700 !important;
}

.lm-product-price ins,
.single-product .price ins {
  color: var(--accent) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.lm-product-price del,
.single-product .price del {
  color: rgba(113,34,137,0.45) !important;
}

.lm-lowest-price-note {
  margin-top: 8px;
  font-size: 0.82rem;
  line-height: 1.45;
  color: rgba(17,17,17,0.48);
  font-weight: 400;
}

.lm-lowest-price-note span,
.lm-lowest-price-note .woocommerce-Price-amount {
  color: inherit !important;
  font-weight: 400 !important;
}

.lm-product-gallery-main,
.lm-product-gallery-main img,
.lm-product-gallery-main .wp-post-image {
  border-color: transparent !important;
}

.lm-product-gallery-main {
  box-shadow: inset 0 0 0 1px rgba(113,34,137,0.18) !important;
}

.lm-product-gallery-thumbs .flex-active,
.lm-product-gallery-thumbs .is-current,
.lm-product-gallery-thumbs .is-active,
.lm-product-gallery-thumbs .active,
.lm-product-thumb.is-current,
.lm-product-thumb.is-active,
.lm-product-thumb.active,
.flex-control-thumbs li img.flex-active,
.flex-control-thumbs li.flex-active img {
  border-color: var(--accent) !important;
  box-shadow: inset 0 0 0 1px rgba(113,34,137,0.18) !important;
  outline: none !important;
}

.lm-shop-header--simple .lm-shop-actions a {
  margin-right: 0;
}

.lm-shop-meta--links,
.lm-shop-meta--links a {
  color: rgba(113,34,137,0.65);
  text-decoration: none;
}

.lm-shop-meta--links a:hover {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.lm-card-body {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.lm-card-title {
  margin-bottom: 18px;
}

.lm-card-bottom {
  margin-top: auto;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}

.lm-card-bottom-left,
.lm-card-bottom-right {
  display: flex;
  flex-direction: column;
}

.lm-card-bottom-right {
  align-items: flex-end;
  gap: 10px;
}

.lm-card-price {
  color: var(--accent);
  font-weight: 700;
}

.lm-card-discount-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(113,34,137,0.10);
  color: var(--accent);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.lm-card-body .lm-btn,
.lm-card-body .button,
.lm-card-bottom-right .button {
  align-self: flex-end;
}

@media (max-width: 980px) {
  .lm-card-bottom {
    align-items: stretch;
    flex-direction: column;
  }

  .lm-card-bottom-right,
  .lm-card-body .lm-btn,
  .lm-card-body .button,
  .lm-card-bottom-right .button {
    align-items: stretch;
    align-self: stretch;
  }
}


/* ===== v74 archive card fix: always show title, price and CTA ===== */
.lm-product-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  overflow: hidden !important;
}

.lm-archive-thumb {
  display: block !important;
  flex: 0 0 auto !important;
}

.lm-card-body {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  min-height: 260px !important;
  height: auto !important;
  gap: 10px !important;
}

.lm-card-title {
  margin: 0 0 4px !important;
  font-size: clamp(1.55rem, 2vw, 2.2rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.03em !important;
}

.lm-card-title a {
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

.lm-shop-meta {
  margin-bottom: 2px !important;
}

.lm-card-bottom {
  margin-top: auto !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 14px !important;
  width: 100% !important;
}

.lm-card-bottom-left {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.lm-card-bottom-right {
  flex: 0 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  gap: 10px !important;
}

.lm-card-price,
.lm-card-price .woocommerce-Price-amount,
.lm-card-price ins {
  color: var(--accent) !important;
  font-weight: 700 !important;
  font-size: clamp(1.2rem, 1.6vw, 1.6rem) !important;
  line-height: 1.1 !important;
}

.lm-card-bottom .button,
.lm-card-bottom .lm-btn,
.lm-card-bottom-right .button,
.lm-card-bottom-right .lm-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 220px !important;
  min-height: 56px !important;
  padding: 0 24px !important;
  white-space: nowrap !important;
}

.lm-lowest-price-note {
  margin-top: 6px !important;
  font-size: 0.78rem !important;
  line-height: 1.35 !important;
  color: rgba(17,17,17,0.48) !important;
}

@media (max-width: 980px) {
  .lm-card-body {
    min-height: 220px !important;
  }

  .lm-card-bottom {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .lm-card-bottom-right {
    align-items: stretch !important;
  }

  .lm-card-bottom .button,
  .lm-card-bottom .lm-btn,
  .lm-card-bottom-right .button,
  .lm-card-bottom-right .lm-btn {
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* ===== v75 product categories stacked, 10px gap to title, sale-only badge/note ===== */
.lm-product-breadcrumbs--stacked {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 4px !important;
  margin-bottom: 10px !important;
}

.lm-product-breadcrumbs--stacked::before {
  margin-bottom: 6px !important;
}

.lm-product-breadcrumbs--stacked .lm-product-breadcrumb {
  display: inline-block !important;
  line-height: 1.25 !important;
}

.lm-product-summary,
.lm-product-summary .summary {
  position: relative !important;
}

.lm-sale-discount-badge {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 62px !important;
  height: 62px !important;
  border-radius: 50% !important;
  background: #d72638 !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  line-height: 1 !important;
  z-index: 5 !important;
  box-shadow: 0 10px 24px rgba(215,38,56,0.22) !important;
}

.lm-product-price + .lm-lowest-price-note {
  margin-top: 10px !important;
}

.single-product .lm-lowest-price-note {
  font-size: 0.8rem !important;
  line-height: 1.4 !important;
  color: rgba(17,17,17,0.52) !important;
  font-weight: 400 !important;
  max-width: 420px !important;
}

.lm-shop-meta--links {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 4px !important;
  margin-bottom: 10px !important;
}

.lm-shop-meta--links a {
  display: inline-block !important;
  line-height: 1.25 !important;
}

.lm-card-bottom-left .lm-lowest-price-note {
  margin-top: 6px !important;
}

.lm-card-bottom-right {
  position: relative !important;
}

.lm-card-bottom-right .lm-sale-discount-badge {
  position: static !important;
  width: 46px !important;
  height: 46px !important;
  font-size: 0.78rem !important;
  box-shadow: 0 8px 18px rgba(215,38,56,0.18) !important;
}

@media (max-width: 980px) {
  .lm-sale-discount-badge {
    width: 54px !important;
    height: 54px !important;
    font-size: 0.92rem !important;
  }
}


/* ===== v76 archive cards: inline cats, Fraunces titles, 4-column layout ===== */
@media (min-width: 981px) {
  .lm-archive-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

.lm-product-card {
  position: relative !important;
}

.lm-card-body {
  position: relative !important;
}

.lm-shop-meta--links {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 6px !important;
  margin-bottom: 10px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.lm-shop-meta--links a {
  display: inline !important;
  font-size: 0.78rem !important;
  line-height: 1.1 !important;
  letter-spacing: 0.14em !important;
  white-space: nowrap !important;
}

.lm-shop-meta--links a + a::before {
  content: ", ";
  color: rgba(113,34,137,0.45);
  margin-right: 2px;
}

.lm-card-title {
  font-family: var(--font-serif) !important;
  font-size: 1.2rem !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 14px !important;
}

.lm-card-title a {
  font-family: var(--font-serif) !important;
}

.lm-card-bottom {
  align-items: center !important;
}

.lm-card-bottom-left,
.lm-card-bottom-right {
  justify-content: center !important;
}

.lm-card-price,
.lm-card-price .woocommerce-Price-amount,
.lm-card-price ins {
  line-height: 1 !important;
}

.lm-card-bottom-right {
  align-items: flex-end !important;
}

.lm-card-bottom .button,
.lm-card-bottom .lm-btn,
.lm-card-bottom-right .button,
.lm-card-bottom-right .lm-btn {
  margin: 0 !important;
}

.lm-product-card .lm-sale-discount-badge {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  z-index: 4 !important;
  width: 48px !important;
  height: 48px !important;
  font-size: 0.8rem !important;
}

.lm-card-bottom-right .lm-sale-discount-badge {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
}

@media (max-width: 980px) {
  .lm-card-title {
    font-size: 1.05rem !important;
  }

  .lm-shop-meta--links {
    flex-wrap: wrap !important;
    white-space: normal !important;
    overflow: visible !important;
  }

  .lm-card-bottom {
    align-items: stretch !important;
  }
}


/* ===== v77 archive/single refinements ===== */
@media (min-width: 981px) {
  .lm-archive-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}
.lm-shop-meta--links {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  margin-bottom: 6px !important;
}
.lm-shop-meta--links a {
  display: inline-block !important;
  font-size: 0.62rem !important;
  letter-spacing: 0.11em !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
}
.lm-shop-meta--links a + a::before {
  content: ", ";
  color: rgba(113,34,137,0.35);
}
.lm-card-title {
  font-family: var(--font-serif) !important;
  font-size: 1rem !important;
  margin: 0 0 6px !important;
  line-height: 1.12 !important;
}
.lm-card-body {
  gap: 4px !important;
}
.lm-card-bottom {
  margin-top: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
}
.lm-card-price,
.lm-card-price .woocommerce-Price-amount,
.lm-card-price ins,
.lm-card-price del {
  font-size: 0.92rem !important;
  line-height: 1 !important;
}
.lm-card-price,
.lm-card-price .woocommerce-Price-amount,
.lm-card-price ins {
  color: var(--accent) !important;
  font-weight: 600 !important;
}
.lm-card-price del {
  color: rgba(113,34,137,0.42) !important;
}
.lm-card-bottom .button,
.lm-card-bottom .lm-btn,
.lm-archive-card-btn {
  min-width: 168px !important;
  min-height: 46px !important;
  padding: 0 18px !important;
}
.lm-product-card {
  position: relative !important;
}
.lm-product-card > .lm-sale-discount-badge {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  background: #d72638 !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0.84rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-shadow: 0 10px 22px rgba(215,38,56,0.20) !important;
  z-index: 4 !important;
}
.lm-product-summary-sticky {
  position: relative !important;
}
#lmProductSaleBadgeWrap {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  z-index: 5 !important;
}
#lmProductSaleBadgeWrap .lm-sale-discount-badge {
  width: 62px !important;
  height: 62px !important;
  border-radius: 50% !important;
  background: #d72638 !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}
#lmProductLowestPrice,
.lm-lowest-price-note {
  margin-top: 8px !important;
}
.lm-lowest-price-note {
  font-size: 0.76rem !important;
  line-height: 1.35 !important;
  color: rgba(17,17,17,0.50) !important;
  font-weight: 400 !important;
  max-width: 360px !important;
}
.lm-lowest-price-note span,
.lm-lowest-price-note .woocommerce-Price-amount {
  color: inherit !important;
  font-weight: 400 !important;
}
.lm-product-breadcrumbs--stacked {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 0 !important;
  margin-bottom: 10px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}
.lm-product-breadcrumbs--stacked::before {
  margin-right: 8px !important;
  margin-bottom: 0 !important;
}
.lm-product-breadcrumbs--stacked .lm-product-breadcrumb {
  display: inline-block !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.11em !important;
  line-height: 1.1 !important;
}
.lm-product-breadcrumbs--stacked .lm-product-breadcrumb + .lm-product-breadcrumb::before {
  content: ", ";
  color: rgba(113,34,137,0.35);
}
@media (max-width: 980px) {
  .lm-card-bottom .button,
  .lm-card-bottom .lm-btn,
  .lm-archive-card-btn {
    min-width: 150px !important;
    min-height: 44px !important;
  }
}


/* ===== v78 mobile variants + product cards refinement ===== */
.lm-product-breadcrumbs--stacked,
.lm-shop-meta--links {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

.lm-shop-meta--links {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 2px 0 !important;
  min-height: 2.7em !important;
  margin-bottom: 0 !important;
}

.lm-shop-meta--links a {
  display: inline !important;
  line-height: 1.3 !important;
}

.lm-card-body {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  gap: 0 !important;
}

.lm-card-title {
  min-height: 2.5em !important;
  margin: 0 0 20px !important;
}

.lm-card-bottom {
  margin-top: auto !important;
  align-items: flex-end !important;
  gap: 16px !important;
}

.lm-card-bottom-left {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.lm-card-bottom-right {
  flex: 0 0 auto !important;
}

.lm-lowest-price-note,
#lmProductLowestPrice .lm-lowest-price-note {
  width: 100% !important;
  max-width: none !important;
  font-size: 0.68rem !important;
  line-height: 1.35 !important;
  margin-top: 8px !important;
}

.lm-card-price del,
.lm-card-price .price del,
.lm-product-price del,
#lmProductPrice del,
.single_variation .price del {
  display: none !important;
}

.lm-card-price ins,
.lm-product-price ins,
#lmProductPrice ins,
.single_variation .price ins {
  text-decoration: none !important;
}

@media (max-width: 980px) {
  .lm-variant-mini-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .lm-variant-mini-grid.is-collapsed {
    overflow: hidden !important;
  }

  .lm-variants-more {
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    margin-top: 16px !important;
  }

  .lm-cart-row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 10px !important;
  }

  .lm-cart-row .quantity.lm-qty-enhanced {
    width: auto !important;
    flex: 0 0 auto !important;
    gap: 8px !important;
  }

  .lm-qty-btn,
  .lm-cart-row .quantity.lm-qty-enhanced .qty,
  form.cart .quantity.lm-qty-enhanced .qty,
  .woocommerce div.product form.cart .quantity.lm-qty-enhanced .qty {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    font-size: 1.2rem !important;
  }

  .single_add_to_cart_button.lm-add-to-cart,
  .single-product .single_add_to_cart_button {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    min-height: 52px !important;
    padding: 0 18px !important;
    font-size: 0.82rem !important;
  }

  .lm-product-description-full {
    margin-top: 30px !important;
  }

  .lm-shop-meta--links {
    min-height: 2.9em !important;
  }

  .lm-card-title {
    min-height: 2.7em !important;
    margin-bottom: 20px !important;
  }
}

@media (max-width: 640px) {
  .lm-card-bottom {
    gap: 12px !important;
  }

  .lm-card-bottom .button,
  .lm-card-bottom .lm-btn,
  .lm-archive-card-btn {
    min-width: 136px !important;
    padding: 0 14px !important;
  }

  .lm-lowest-price-note,
  #lmProductLowestPrice .lm-lowest-price-note {
    font-size: 0.64rem !important;
  }
}


/* ===== v79 desktop fix: cart row must stay above description ===== */
@media (min-width: 981px) {
  .lm-product-summary-sticky {
    position: static !important;
    top: auto !important;
  }

  .lm-product-block:last-child {
    margin-bottom: 30px !important;
  }
}


/* ===== v80 archive card alignment + qty/mobile fixes ===== */
.lm-card-body {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.lm-shop-meta--links {
  display: flex !important;
  flex-wrap: wrap !important;
  align-content: flex-start !important;
  min-height: calc(1.3em * 2) !important;
  margin-bottom: 20px !important;
}

.lm-card-title {
  display: flex !important;
  align-items: center !important;
  min-height: calc(1.12em * 2) !important;
  margin: 0 0 50px !important;
}

.lm-card-title a {
  display: block !important;
  width: 100% !important;
}

.lm-card-bottom {
  margin-top: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  column-gap: 18px !important;
  row-gap: 10px !important;
}

.lm-card-bottom-left,
.lm-card-bottom-right {
  display: flex !important;
  align-items: center !important;
}

.lm-card-bottom-left {
  justify-content: center !important;
}

.lm-card-bottom-right {
  justify-content: center !important;
}

.lm-card-price {
  text-align: center !important;
}

.lm-card-bottom-note {
  grid-column: 1 / -1 !important;
  text-align: center !important;
  margin-top: 6px !important;
}

.lm-card-bottom-note .lm-lowest-price-note {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
}

@media (min-width: 981px) {
  .lm-card-bottom {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
  }

  .lm-card-bottom-left,
  .lm-card-bottom-right,
  .lm-card-bottom-note {
    width: 100% !important;
    justify-content: center !important;
  }

  .lm-card-bottom-right {
    margin-top: 2px !important;
  }

  .lm-card-bottom-note {
    margin-top: 8px !important;
  }
}

@media (max-width: 980px) {
  .lm-card-title {
    margin-bottom: 34px !important;
  }

  .lm-card-bottom {
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
  }

  .lm-card-bottom-left {
    justify-content: flex-start !important;
    text-align: left !important;
  }

  .lm-card-bottom-right {
    justify-content: flex-end !important;
  }

  .lm-card-bottom-note {
    grid-column: 1 / 2 !important;
    text-align: left !important;
    margin-top: -2px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .lm-card-bottom-note .lm-lowest-price-note {
    white-space: normal !important;
    min-width: 0 !important;
  }

  .lm-cart-row {
    display: grid !important;
    grid-template-columns: auto minmax(0,1fr) !important;
    align-items: center !important;
    gap: 8px !important;
  }

  .lm-cart-row .quantity.lm-qty-enhanced,
  form.cart .quantity.lm-qty-enhanced,
  .woocommerce div.product form.cart .quantity.lm-qty-enhanced {
    display: inline-grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: min-content !important;
    align-items: center !important;
    justify-content: start !important;
    width: auto !important;
    max-width: 100% !important;
    gap: 6px !important;
    overflow: visible !important;
  }

  .lm-qty-btn,
  form.cart .quantity.lm-qty-enhanced .qty,
  .woocommerce div.product form.cart .quantity.lm-qty-enhanced .qty,
  .lm-cart-row .quantity.lm-qty-enhanced .qty {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    font-size: 1rem !important;
  }

  .lm-qty-btn {
    font-size: 1.5rem !important;
    line-height: 1 !important;
  }

  .single_add_to_cart_button.lm-add-to-cart,
  .single-product .single_add_to_cart_button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding: 0 14px !important;
    font-size: 0.78rem !important;
  }
}

@media (max-width: 640px) {
  .lm-shop-meta--links {
    margin-bottom: 16px !important;
  }

  .lm-card-title {
    margin-bottom: 28px !important;
  }

  .lm-card-bottom {
    grid-template-columns: minmax(0,1fr) auto !important;
    column-gap: 12px !important;
  }

  .lm-card-price,
  .lm-card-price .woocommerce-Price-amount,
  .lm-card-price ins {
    font-size: 0.9rem !important;
  }

  .lm-card-bottom .button,
  .lm-card-bottom .lm-btn,
  .lm-archive-card-btn {
    min-width: 132px !important;
    min-height: 42px !important;
    padding: 0 12px !important;
    font-size: 0.76rem !important;
  }
}

/* ===== v81 desktop 50/50 card bottom + 30px spacing ===== */
.lm-card-title {
  margin: 0 0 30px !important;
}

@media (min-width: 981px) {
  .lm-card-bottom {
    grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
    align-items: center !important;
    justify-items: stretch !important;
    column-gap: 18px !important;
    row-gap: 10px !important;
  }

  .lm-card-bottom-left,
  .lm-card-bottom-right {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .lm-card-bottom-left {
    grid-column: 1 / 2 !important;
  }

  .lm-card-bottom-right {
    grid-column: 2 / 3 !important;
    margin-top: 0 !important;
  }

  .lm-card-bottom-note {
    grid-column: 2 / 3 !important;
    width: 100% !important;
    text-align: center !important;
    margin-top: 6px !important;
  }
}

@media (max-width: 980px) {
  .lm-card-title {
    margin-bottom: 30px !important;
  }

  .lm-card-bottom {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    align-items: center !important;
    row-gap: 10px !important;
  }

  .lm-card-bottom-left,
  .lm-card-bottom-right,
  .lm-card-bottom-note {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .lm-card-bottom-left { order: 1 !important; }
  .lm-card-bottom-note { order: 2 !important; grid-column: 1 / -1 !important; margin-top: 0 !important; }
  .lm-card-bottom-right { order: 3 !important; }
}

/* ===== v82 mobile qty/cart row restore + no overlap ===== */
.single-product .lm-product-block:last-child {
  margin-bottom: 36px !important;
}

.single-product .lm-product-description-full {
  clear: both !important;
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 980px) {
  .single-product .lm-product-block:last-child {
    margin-bottom: 34px !important;
  }

  .single-product .lm-cart-row,
  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 18px !important;
    margin-bottom: 0 !important;
  }

  .single-product .lm-cart-row .quantity.lm-qty-enhanced,
  .single-product form.cart .quantity.lm-qty-enhanced,
  .single-product .variations_form .quantity.lm-qty-enhanced,
  .single-product .woocommerce div.product form.cart .quantity.lm-qty-enhanced {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
    margin: 0 !important;
  }

  .single-product .lm-qty-btn,
  .single-product .lm-cart-row .quantity.lm-qty-enhanced .qty,
  .single-product form.cart .quantity.lm-qty-enhanced .qty,
  .single-product .variations_form .quantity.lm-qty-enhanced .qty {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    font-size: 1rem !important;
  }

  .single-product .lm-qty-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    font-size: 1.45rem !important;
  }

  .single-product .lm-cart-row .quantity.lm-qty-enhanced .qty,
  .single-product form.cart .quantity.lm-qty-enhanced .qty,
  .single-product .variations_form .quantity.lm-qty-enhanced .qty {
    font-size: 1rem !important;
    font-weight: 600 !important;
  }

  .single-product .single_add_to_cart_button.lm-add-to-cart,
  .single-product .single_add_to_cart_button,
  .single-product .single_variation_wrap .single_add_to_cart_button {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 16px !important;
    font-size: 0.74rem !important;
    letter-spacing: 0.08em !important;
    white-space: nowrap !important;
  }

  .single-product .lm-product-description-full {
    margin-top: 34px !important;
  }
}

@media (max-width: 420px) {
  .single-product .lm-cart-row,
  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart {
    gap: 8px !important;
  }

  .single-product .lm-qty-btn,
  .single-product .lm-cart-row .quantity.lm-qty-enhanced .qty,
  .single-product form.cart .quantity.lm-qty-enhanced .qty,
  .single-product .variations_form .quantity.lm-qty-enhanced .qty {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    font-size: 0.92rem !important;
  }

  .single-product .lm-qty-btn {
    font-size: 1.3rem !important;
  }

  .single-product .single_add_to_cart_button.lm-add-to-cart,
  .single-product .single_add_to_cart_button,
  .single-product .single_variation_wrap .single_add_to_cart_button {
    min-height: 38px !important;
    height: 38px !important;
    padding: 0 12px !important;
    font-size: 0.68rem !important;
    letter-spacing: 0.06em !important;
  }
}

/* ===== v83 desktop card price 30 / button 70 + tighter title spacing ===== */
.lm-card-title {
  margin: 0 0 15px !important;
}

.lm-card-price,
.lm-card-price .woocommerce-Price-amount,
.lm-card-price .woocommerce-Price-currencySymbol,
.lm-card-price ins,
.lm-card-price del {
  white-space: nowrap !important;
}

@media (min-width: 981px) {
  .lm-card-bottom {
    display: grid !important;
    grid-template-columns: minmax(0, 30%) minmax(0, 70%) !important;
    align-items: center !important;
    column-gap: 16px !important;
    row-gap: 8px !important;
  }

  .lm-card-bottom-left {
    grid-column: 1 / 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .lm-card-bottom-right {
    grid-column: 2 / 3 !important;
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    margin-top: 0 !important;
  }

  .lm-card-bottom-right .button,
  .lm-card-bottom-right .lm-btn,
  .lm-card-bottom .button,
  .lm-card-bottom .lm-btn,
  .lm-archive-card-btn {
    width: 100% !important;
    min-width: 0 !important;
  }

  .lm-card-bottom-note {
    grid-column: 2 / 3 !important;
    width: 100% !important;
    text-align: center !important;
    margin-top: 0 !important;
  }
}

@media (max-width: 980px) {
  .lm-card-title {
    margin-bottom: 15px !important;
  }
}

/* ===== v84 desktop single-product qty/button alignment ===== */
@media (min-width: 981px) {
  .single-product .lm-cart-row,
  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  .single-product .variations_form .single_variation_wrap .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 16px !important;
    width: 100% !important;
    margin-top: 18px !important;
    margin-bottom: 0 !important;
  }

  .single-product .lm-cart-row .quantity.lm-qty-enhanced,
  .single-product form.cart .quantity.lm-qty-enhanced,
  .single-product .variations_form .quantity.lm-qty-enhanced,
  .single-product .woocommerce div.product form.cart .quantity.lm-qty-enhanced {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .single-product .lm-qty-btn,
  .single-product .lm-cart-row .quantity.lm-qty-enhanced .qty,
  .single-product form.cart .quantity.lm-qty-enhanced .qty,
  .single-product .variations_form .quantity.lm-qty-enhanced .qty,
  .single-product .woocommerce div.product form.cart .quantity.lm-qty-enhanced .qty {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    padding: 0 !important;
    border-radius: 50% !important;
  }

  .single-product .lm-qty-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 2rem !important;
    line-height: 1 !important;
  }

  .single-product .lm-cart-row .quantity.lm-qty-enhanced .qty,
  .single-product form.cart .quantity.lm-qty-enhanced .qty,
  .single-product .variations_form .quantity.lm-qty-enhanced .qty,
  .single-product .woocommerce div.product form.cart .quantity.lm-qty-enhanced .qty {
    font-size: 1.6rem !important;
    font-weight: 600 !important;
    text-align: center !important;
  }

  .single-product .single_add_to_cart_button.lm-add-to-cart,
  .single-product .single_add_to_cart_button,
  .single-product .single_variation_wrap .single_add_to_cart_button {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 72px !important;
    height: 72px !important;
    padding: 0 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.9rem !important;
    letter-spacing: 0.08em !important;
    white-space: nowrap !important;
  }
}

/* ===== v84 archive lowest-price note full card width safeguard ===== */
.lm-card-bottom {
  position: relative !important;
}

.lm-card-bottom-note,
.lm-card-bottom-note .lm-lowest-price-note {
  width: 100% !important;
  max-width: 100% !important;
}

@media (min-width: 981px) {
  .lm-card-bottom-note {
    grid-column: 1 / -1 !important;
    text-align: center !important;
    margin-top: 10px !important;
  }
}

@media (max-width: 980px) {
  .single-product .lm-product-description-full {
    margin-top: 26px !important;
  }
}

/* ===== v85 mobile cart row between separators + typography tuning ===== */
@media (max-width: 980px) {
  .single-product .lm-product-block:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .single-product .lm-cart-row,
  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  .single-product .variations_form .single_variation_wrap .woocommerce-variation-add-to-cart {
    position: relative !important;
    z-index: 2 !important;
    margin-top: 18px !important;
    margin-bottom: 22px !important;
  }

  .single-product .lm-product-description-full {
    clear: both !important;
    display: block !important;
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .single-product .lm-product-description-full .lm-section-heading {
    margin-top: 0 !important;
    padding-top: 18px !important;
  }
}

/* Category/archive cards: product title +2px */
.lm-card-title {
  font-size: clamp(1.675rem, 2.1vw, 2.325rem) !important;
}

/* Single product page: title -5px */
.lm-product-title {
  font-size: clamp(1.8875rem, 3.6vw, 3.9875rem) !important;
}

/* ===== v86 category page compact titles + tighter price/button spacing ===== */

/* desktop */
@media (min-width: 769px) {
  /* nazwa produktu */
  .lm-card-title,
  .product-card__title,
  .woocommerce-loop-product__title {
    font-size: 20px !important;
    line-height: 1.3 !important;
    margin-bottom: 10px !important;
  }

  /* sekcja cena + button bliżej */
  .lm-card-price,
  .lm-card-bottom,
  .lm-card-bottom-right,
  .product-card__price,
  .product-card__actions,
  .price,
  .button {
    margin-top: 0 !important;
  }

  /* wrapper pod nazwą */
  .lm-card-body,
  .product-card__content {
    gap: 10px !important;
  }

  .lm-card-bottom {
    row-gap: 6px !important;
  }
}

.products .product,
.lm-archive-grid .product,
.lm-product-card {
  display: flex;
  flex-direction: column;
}

.products .product .woocommerce-loop-product__title,
.lm-product-card .lm-card-title {
  margin-bottom: 10px !important;
}


/* ===== v87 obligatory single-product overlap + smooth mobile description fix ===== */

/* stable stacking on product page */
.single-product .lm-product-top,
.single-product .lm-product-summary-col,
.single-product .lm-product-summary-sticky,
.single-product .summary,
.single-product form.cart,
.single-product .variations_form,
.single-product .single_variation_wrap,
.single-product .woocommerce-variation-add-to-cart,
.single-product .lm-cart-row,
.single-product .lm-product-description-full,
.single-product .lm-related-products-section {
  position: relative !important;
}

.single-product .lm-product-summary-col,
.single-product .lm-product-summary-sticky,
.single-product form.cart,
.single-product .variations_form,
.single-product .single_variation_wrap,
.single-product .woocommerce-variation-add-to-cart,
.single-product .lm-cart-row {
  z-index: 20 !important;
}

.single-product .lm-product-description-full,
.single-product .lm-related-products-section {
  clear: both !important;
  z-index: 1 !important;
}

.single-product .lm-product-block,
.single-product .lm-product-block--variants-under-title,
.single-product .lm-product-block:last-child {
  overflow: visible !important;
}

/* keep sticky only on desktop */
@media (min-width: 981px) {
  .single-product .lm-product-summary-sticky {
    position: sticky !important;
    top: 120px !important;
    z-index: 30 !important;
  }

  .single-product .lm-cart-row,
  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  .single-product .variations_form .single_variation_wrap .woocommerce-variation-add-to-cart {
    margin-bottom: 28px !important;
  }

  .single-product .lm-product-description-full {
    margin-top: 8px !important;
  }
}

@media (max-width: 980px) {
  .single-product .lm-product-summary-sticky {
    position: relative !important;
    top: auto !important;
    overflow: visible !important;
    z-index: 20 !important;
  }

  .single-product .lm-product-block {
    padding-top: 18px !important;
    margin-top: 18px !important;
  }

  .single-product .lm-product-block--variants-under-title {
    padding-bottom: 12px !important;
  }

  .single-product .lm-cart-row,
  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  .single-product .variations_form .single_variation_wrap .woocommerce-variation-add-to-cart {
    align-items: center !important;
    position: relative !important;
    z-index: 25 !important;
    margin-top: 14px !important;
    margin-bottom: 28px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  .single-product .lm-product-description-full {
    margin-top: 0 !important;
    padding-top: 10px !important;
  }

  .single-product .lm-product-description-full .lm-section-heading {
    margin-top: 0 !important;
    padding-top: 22px !important;
  }

  .single-product .lm-short-description-wrap {
    margin-bottom: 18px !important;
  }

  .single-product .lm-product-short-description {
    margin-bottom: 0 !important;
    transition: max-height 0.32s ease, opacity 0.2s ease !important;
    will-change: max-height;
  }

  .single-product .lm-product-short-description.is-collapsed {
    max-height: 7.6em !important;
  }

  .single-product .lm-short-toggle {
    margin-top: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 32px !important;
  }
}

@media (max-width: 640px) {
  .single-product .lm-cart-row,
  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  .single-product .variations_form .single_variation_wrap .woocommerce-variation-add-to-cart {
    gap: 10px !important;
  }

  .single-product .lm-cart-row .quantity.lm-qty-enhanced,
  .single-product form.cart .quantity.lm-qty-enhanced,
  .single-product .variations_form .quantity.lm-qty-enhanced,
  .single-product .woocommerce div.product form.cart .quantity.lm-qty-enhanced {
    flex: 0 0 auto !important;
  }

  .single-product .single_add_to_cart_button.lm-add-to-cart,
  .single-product .single_add_to_cart_button,
  .single-product .single_variation_wrap .single_add_to_cart_button {
    flex: 1 1 0 !important;
    min-width: 0 !important;
  }
}


/* ===== v88 mobile variants swipe row instead of collapse ===== */
@media (max-width: 980px) {
  .single-product .lm-product-block--variants-under-title {
    padding-bottom: 18px !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    max-height: none !important;
    padding: 2px 0 10px !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    touch-action: pan-x !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid::-webkit-scrollbar {
    display: none !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid.is-collapsed {
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-mini {
    flex: 0 0 calc((100% - 24px) / 3) !important;
    width: calc((100% - 24px) / 3) !important;
    min-width: calc((100% - 24px) / 3) !important;
    max-width: calc((100% - 24px) / 3) !important;
    scroll-snap-align: start !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-preview-box {
    display: none !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variants-more {
    display: none !important;
  }

  .single-product .lm-variants-scroll-indicator {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 16px !important;
    width: 100% !important;
    margin-top: 10px !important;
    padding: 0 !important;
    color: #1d1620 !important;
  }

  .single-product .lm-variants-scroll-indicator .spec-label {
    flex: 0 0 auto !important;
    font-size: clamp(24px, 6vw, 30px) !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    font-weight: 500 !important;
    color: #1d1620 !important;
    white-space: nowrap !important;
  }

  .single-product .lm-variants-scroll-indicator .scroll-track {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 3px !important;
    background-color: rgba(78,15,88,0.18) !important;
    position: relative !important;
    overflow: hidden !important;
    border-radius: 999px !important;
  }

  .single-product .lm-variants-scroll-indicator .scroll-thumb {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 36px !important;
    height: 100% !important;
    border-radius: 999px !important;
  }
}

@media (max-width: 520px) {
  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid {
    gap: 10px !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-mini {
    flex-basis: calc((100% - 20px) / 3) !important;
    width: calc((100% - 20px) / 3) !important;
    min-width: calc((100% - 20px) / 3) !important;
    max-width: calc((100% - 20px) / 3) !important;
  }

  .single-product .lm-variants-scroll-indicator {
    gap: 12px !important;
    margin-top: 6px !important;
  }

  .single-product .lm-variants-scroll-indicator .spec-label {
    font-size: clamp(20px, 8vw, 28px) !important;
  }
}


/* ===== v90 mobile swipe indicator: moving thumb + label like short toggle ===== */
@media (max-width: 980px) {
  .single-product .lm-variants-scroll-indicator {
    gap: 10px !important;
    margin-top: 8px !important;
    align-items: center !important;
  }

  .single-product .lm-variants-scroll-indicator .spec-label {
    margin-top: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 32px !important;
    font-size: inherit !important;
    line-height: 1.2 !important;
    letter-spacing: .02em !important;
    text-transform: none !important;
    font-weight: 700 !important;
    color: var(--accent-dark) !important;
    white-space: nowrap !important;
    flex: 0 0 auto !important;
  }

  .single-product .lm-variants-scroll-indicator .scroll-track {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 3px !important;
    background-color: rgba(78,15,88,0.18) !important;
    position: relative !important;
    overflow: hidden !important;
    border-radius: 999px !important;
  }

  .single-product .lm-variants-scroll-indicator .scroll-thumb {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    height: 100% !important;
    border-radius: 999px !important;
    will-change: transform, width !important;
    transition: transform .14s ease-out, width .14s ease-out !important;
  }
}

@media (max-width: 520px) {
  .single-product .lm-variants-scroll-indicator {
    gap: 10px !important;
    margin-top: 6px !important;
  }

  .single-product .lm-variants-scroll-indicator .spec-label {
    font-size: inherit !important;
  }
}


/* ===== v91 single product gallery + related heading ===== */
.lm-gallery-main-frame.lm-product-gallery-main {
  position: relative;
  aspect-ratio: 1 / 1;
  width: 100%;
  overflow: hidden;
  border-radius: 28px;
  background: rgba(255,255,255,0.58);
  box-shadow: inset 0 0 0 1px rgba(113,34,137,0.12);
}

.lm-gallery-main-image.lm-product-gallery-main-image {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 22px;
}

.lm-gallery-main-image.lm-product-gallery-main-image img,
#lmMainProductImage {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center center !important;
  display: block;
}

.lm-gallery-thumbs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(88px, 88px));
  gap: 14px;
}

.lm-thumb {
  width: 88px;
  height: 88px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  border-radius: 20px;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}

.lm-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  border-radius: 14px;
  display: block;
}

.lm-thumb:hover,
.lm-thumb:focus-visible,
.lm-thumb.is-active,
.lm-thumb[aria-current="true"] {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 2px rgba(113,34,137,0.16) !important;
  outline: none;
}

.lm-thumb:hover img,
.lm-thumb:focus-visible img,
.lm-thumb.is-active img,
.lm-thumb[aria-current="true"] img {
  box-shadow: inset 0 0 0 1px rgba(113,34,137,0.14);
}

.lm-product-zoom-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 400;
}

@media (min-width: 981px) {
  .lm-gallery-main-image.lm-product-gallery-main-image { cursor: zoom-in; }
}

@media (max-width: 980px) {
  .lm-gallery-main-frame.lm-product-gallery-main { border-radius: 24px; }
  .lm-gallery-main-image.lm-product-gallery-main-image { padding: 16px; }
}


/* ===== v93 final product page polish: rating, square gallery, purple thumbs, shimmer button ===== */
.single-product .tm-grade-label {
  display: flex !important;
  align-items: center;
  gap: 10px;
  margin: 12px 0 4px;
}
.single-product .tm-grade-label__stars {
  display: flex;
  align-items: center;
}
.single-product .tm-grade-label__stars img {
  width: auto;
  height: 18px;
  display: block;
}
.single-product .tm-grade-label__text {
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: var(--text);
}

/* gallery main image square + centered */
.single-product .lm-product-gallery-main,
.single-product .lm-gallery-main-frame,
.single-product .lm-gallery-main-image,
.single-product .lm-product-gallery-main-image {
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
}
.single-product .lm-product-gallery-main,
.single-product .lm-gallery-main-frame {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
.single-product .lm-gallery-main-image,
.single-product .lm-product-gallery-main-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  background: #f7f4f8;
  border-radius: 28px;
  overflow: hidden;
}
.single-product .lm-gallery-main-image img,
.single-product .lm-product-gallery-main-image img,
.single-product #lmMainProductImage {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
}

/* thumbnails square and active purple */
.single-product .lm-gallery-thumbs {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}
.single-product .lm-thumb {
  width: 104px !important;
  height: 104px !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 22px !important;
  border: 2px solid rgba(111, 44, 143, 0.14) !important;
  background: #fff !important;
  box-shadow: none !important;
  padding: 0 !important;
  overflow: hidden !important;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease !important;
}
.single-product .lm-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  background: #fff;
}
.single-product .lm-thumb:hover,
.single-product .lm-thumb:focus-visible,
.single-product .lm-thumb.is-active,
.single-product .lm-thumb[aria-current="true"] {
  border-color: #6f2c8f !important;
  box-shadow: 0 0 0 2px rgba(111,44,143,0.14) !important;
  transform: translateY(-1px);
}

/* add to cart row spacing mobile */
@media (max-width: 768px) {
  .single-product .lm-cart-row,
  .single-product form.cart .single_variation,
  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  .single-product form.cart {
    margin-top: 18px !important;
    margin-bottom: 18px !important;
    align-items: center !important;
  }
}

/* dark purple button with left-to-right shimmer */
.single-product .single_add_to_cart_button,
.single-product .lm-add-to-cart.button.alt {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate;
  border: none !important;
  color: #fff !important;
  background: linear-gradient(135deg, #4a1768 0%, #612183 38%, #7a39a4 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 8px 22px rgba(111,44,143,0.16) !important;
}
.single-product .single_add_to_cart_button::before,
.single-product .lm-add-to-cart.button.alt::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.08) 22%, rgba(255,255,255,0.22) 34%, rgba(255,255,255,0.05) 48%, rgba(255,255,255,0) 62%);
  opacity: .55;
  pointer-events: none;
}
.single-product .single_add_to_cart_button::after,
.single-product .lm-add-to-cart.button.alt::after {
  content: "";
  position: absolute;
  top: -12%;
  left: -38%;
  width: 32%;
  height: 124%;
  background: linear-gradient(100deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.1) 20%, rgba(255,255,255,0.5) 48%, rgba(255,255,255,0.14) 72%, rgba(255,255,255,0) 100%);
  transform: skewX(-22deg);
  pointer-events: none;
}
@media (hover: hover) {
  .single-product .single_add_to_cart_button:hover::after,
  .single-product .lm-add-to-cart.button.alt:hover::after {
    animation: lmButtonShine 1.05s ease forwards;
  }
  .single-product .single_add_to_cart_button:hover,
  .single-product .lm-add-to-cart.button.alt:hover {
    filter: brightness(1.02);
  }
}
@keyframes lmButtonShine {
  0% { left: -38%; opacity: 0; }
  12% { opacity: 1; }
  100% { left: 116%; opacity: 0; }
}


/* ===== v94 cross-sell popup promo cards refresh ===== */
.lm-qcqs-popup__dialog {
  background:
    radial-gradient(circle at top right, rgba(113,34,137,0.08) 0%, rgba(113,34,137,0) 30%),
    linear-gradient(180deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.92) 100%),
    linear-gradient(135deg, rgba(216,185,225,0.12) 0%, rgba(113,34,137,0.05) 100%);
  border: 1px solid rgba(113,34,137,0.10);
  box-shadow: 0 32px 90px rgba(78,15,88,0.18);
}

.lm-qcqs-popup__top {
  margin-bottom: 8px;
}

.lm-qcqs-popup__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.lm-qcqs-popup__eyebrow::before {
  content: "";
  width: 22px;
  height: 1px;
  background: var(--accent);
}

.lm-qcqs-popup__cards {
  gap: 22px;
}

.lm-qcqs-card {
  position: relative;
  grid-template-columns: 34px 108px 1fr;
  align-items: stretch;
  gap: 18px;
  padding: 22px;
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(252,249,253,0.96) 100%);
  border: 1px solid rgba(113,34,137,0.10);
  box-shadow: 0 18px 36px rgba(78,15,88,0.06);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.lm-qcqs-card:hover {
  transform: translateY(-2px);
  border-color: rgba(113,34,137,0.24);
  box-shadow: 0 24px 44px rgba(78,15,88,0.10);
}

.lm-qcqs-card__badge {
  position: absolute;
  top: 14px;
  right: 14px;
  min-width: 66px;
  padding: 8px 12px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--accent-dark) 0%, var(--accent) 100%);
  color: #fff;
  font-size: .74rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: .06em;
  text-align: center;
  box-shadow: 0 10px 18px rgba(113,34,137,0.24);
}

.lm-qcqs-card__badge.is-hidden {
  display: none;
}

.lm-qcqs-card__check {
  align-self: center;
}

.lm-qcqs-card__fakecheck {
  width: 24px;
  height: 24px;
  border-radius: 7px;
}

.lm-qcqs-card__image {
  width: 108px;
  height: 108px;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(248,244,250,0.9) 0%, rgba(255,255,255,1) 100%);
  border: 1px solid rgba(113,34,137,0.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
}

.lm-qcqs-card__image img {
  object-fit: contain;
  padding: 10px;
}

.lm-qcqs-card__content {
  justify-content: center;
  gap: 8px;
  padding-right: 54px;
}

.lm-qcqs-card__title {
  font-size: clamp(1.15rem, 1.5vw, 1.8rem);
  line-height: 1.16;
  letter-spacing: -0.02em;
}

.lm-qcqs-card__promo {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(113,34,137,0.08);
  color: var(--accent-dark);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.lm-qcqs-card__price,
.lm-qcqs-card__price .price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px;
  color: #9a8d24;
  font-size: clamp(1.2rem, 1.7vw, 1.95rem);
}

.lm-qcqs-card__price del {
  color: rgba(154,141,36,0.68);
  opacity: 1;
  text-decoration-thickness: 1.5px;
}

.lm-qcqs-card__price .price > .wgm-info,
.lm-qcqs-card__price .price > .wc-price-history,
.lm-qcqs-card__price .price > small,
.lm-qcqs-card__price .woocommerce-price-suffix,
.lm-qcqs-card__price .price > span:not(.amount),
.lm-qcqs-card__price small,
.lm-qcqs-card__price .omnibus-price,
.lm-qcqs-card__price .lowest-price,
.lm-qcqs-card__price .wc-strikethrough-price,
.lm-qcqs-card__price .price-30-days,
.lm-qcqs-card__price .price__lowest,
.lm-qcqs-card__price .price-from {
  display: none !important;
}

.lm-qcqs-popup__actions {
  gap: 16px;
  margin-top: 30px;
}

.lm-qcqs-popup__actions .btn {
  min-width: 238px;
}

.lm-qcqs-popup__actions .btn-secondary {
  background: rgba(255,255,255,0.56);
  color: rgba(17,17,17,0.42);
  border: 1px solid rgba(17,17,17,0.06);
  box-shadow: none;
}

@media (max-width: 900px) {
  .lm-qcqs-popup__title {
    font-size: clamp(2rem, 10vw, 2.8rem);
    line-height: .98;
    padding-right: 42px;
  }

  .lm-qcqs-popup__desc {
    margin-bottom: 18px;
    font-size: .98rem;
    line-height: 1.55;
  }

  .lm-qcqs-card {
    grid-template-columns: 28px 80px 1fr;
    gap: 12px;
    padding: 16px;
    border-radius: 24px;
  }

  .lm-qcqs-card__badge {
    top: 10px;
    right: 10px;
    min-width: 60px;
    padding: 7px 10px;
    font-size: .68rem;
  }

  .lm-qcqs-card__image {
    width: 80px;
    height: 80px;
    border-radius: 18px;
  }

  .lm-qcqs-card__content {
    gap: 6px;
    padding-right: 46px;
  }

  .lm-qcqs-card__title {
    font-size: 1.02rem;
    line-height: 1.16;
  }

  .lm-qcqs-card__promo {
    padding: 6px 9px;
    font-size: .64rem;
  }

  .lm-qcqs-card__price,
  .lm-qcqs-card__price .price {
    gap: 8px;
    font-size: 1.15rem;
  }

  .lm-qcqs-popup__actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .lm-qcqs-popup__actions .btn {
    width: 100%;
    min-width: 0;
  }
}

/* ===== v96 gallery lightbox full-screen fill + mobile swipe alignment ===== */
.single-product .lm-gallery-main-image img,
.single-product .lm-product-gallery-main-image img,
.single-product #lmMainProductImage {
  object-fit: cover !important;
}

.single-product .lm-product-zoom-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 99999 !important;
}

.single-product .lm-product-zoom-backdrop {
  background: rgba(36, 14, 56, 0.84) !important;
  backdrop-filter: blur(4px) !important;
}

.single-product .lm-product-zoom-dialog {
  position: absolute !important;
  inset: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.single-product .lm-product-zoom-stage {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 72px 88px !important;
  touch-action: pan-y pinch-zoom !important;
}

.single-product .lm-product-zoom-stage img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.single-product .lm-product-zoom-close,
.single-product .lm-product-zoom-nav {
  position: absolute !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  cursor: pointer !important;
  text-shadow: 0 4px 18px rgba(0,0,0,0.28) !important;
}

.single-product .lm-product-zoom-close {
  top: 18px !important;
  right: 22px !important;
  width: 44px !important;
  height: 44px !important;
  font-size: 38px !important;
  line-height: 1 !important;
}

.single-product .lm-product-zoom-nav {
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 58px !important;
  height: 58px !important;
  font-size: 54px !important;
  line-height: 1 !important;
}

.single-product .lm-product-zoom-prev {
  left: 18px !important;
}

.single-product .lm-product-zoom-next {
  right: 18px !important;
}

.single-product .lm-product-zoom-modal.is-single .lm-product-zoom-nav {
  display: none !important;
}

body.lm-product-zoom-open {
  overflow: hidden !important;
}

@media (max-width: 980px) {
  .single-product .lm-product-zoom-stage {
    padding: 78px 20px 28px !important;
  }

  .single-product .lm-product-zoom-close {
    top: 14px !important;
    right: 14px !important;
    width: 40px !important;
    height: 40px !important;
    font-size: 34px !important;
  }

  .single-product .lm-product-zoom-nav {
    width: 42px !important;
    height: 42px !important;
    font-size: 36px !important;
  }

  .single-product .lm-product-zoom-prev {
    left: 8px !important;
  }

  .single-product .lm-product-zoom-next {
    right: 8px !important;
  }

  .single-product .lm-variants-scroll-indicator {
    align-items: center !important;
  }

  .single-product .lm-variants-scroll-indicator .spec-label {
    margin-top: 0 !important;
    min-height: auto !important;
    align-self: center !important;
  }

  .single-product .lm-variants-scroll-indicator .scroll-track {
    align-self: center !important;
  }
}


/* ===== v97 lightbox top-layer + category link without underline ===== */
.single-product .lm-product-zoom-modal,
body.admin-bar.single-product .lm-product-zoom-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483647 !important;
  isolation: isolate !important;
}

.single-product .lm-product-zoom-backdrop {
  z-index: 1 !important;
}

.single-product .lm-product-zoom-dialog {
  z-index: 2 !important;
}

.single-product .lm-product-zoom-stage,
.single-product .lm-product-zoom-stage img {
  position: relative !important;
  z-index: 2 !important;
}

.single-product .lm-section-heading a,
.single-product .lm-section-heading a:link,
.single-product .lm-section-heading a:visited,
.single-product .lm-section-heading a:hover,
.single-product .lm-section-heading a:focus {
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}


/* v98 product option + stock + short description */
.lm-option-card.is-selected,
.lm-attribute-swatch.is-selected,
.lm-attribute-swatch.lm-option-card.is-selected,
.single-product .lm-option-card.is-selected,
.single-product .lm-attribute-swatch.is-selected,
.single-product .lm-attribute-swatch.lm-option-card.is-selected {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 2px rgba(113,34,137,0.16), 0 14px 30px rgba(78,15,88,0.08) !important;
  outline: none !important;
}

.lm-option-card:focus,
.lm-option-card:focus-visible,
.lm-attribute-swatch:focus,
.lm-attribute-swatch:focus-visible,
.single-product .lm-option-card:focus,
.single-product .lm-option-card:focus-visible,
.single-product .lm-attribute-swatch:focus,
.single-product .lm-attribute-swatch:focus-visible {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 2px rgba(113,34,137,0.16) !important;
  outline: none !important;
}

.single-product .stock,
.single-product .in-stock,
.single-product .out-of-stock,
.single-product .available-on-backorder,
.single-product .woocommerce-variation-availability,
.single-product .woocommerce-variation .stock,
.single-product .product_meta .stock,
.single-product .lm-product-stock,
.single-product p.stock {
  display: none !important;
}

.single-product .lm-short-description-wrap {
  margin-bottom: 24px;
}

.single-product .lm-product-short-description,
.single-product .lm-product-short-description.entry-content {
  font-size: 1rem !important;
  line-height: 1.95 !important;
  color: #111 !important;
  margin-bottom: 0 !important;
}

.single-product .lm-product-short-description p,
.single-product .lm-product-short-description ul,
.single-product .lm-product-short-description ol,
.single-product .lm-product-short-description blockquote {
  margin: 0 0 1.2em !important;
}

.single-product .lm-product-short-description p:last-child,
.single-product .lm-product-short-description ul:last-child,
.single-product .lm-product-short-description ol:last-child,
.single-product .lm-product-short-description blockquote:last-child {
  margin-bottom: 0 !important;
}

.single-product .lm-product-short-description.is-collapsed::after {
  background: linear-gradient(180deg, rgba(252,251,253,0) 0%, rgba(252,251,253,1) 100%) !important;
}

/* ===== v17 subtle CTA shine + unified header color ===== */
.lm-add-to-cart.button.alt,
.single_add_to_cart_button,
button.single_add_to_cart_button,
.woocommerce button.single_add_to_cart_button,
.woocommerce a.button.alt,
.woocommerce button.button.alt {
  background:
    linear-gradient(135deg, #712289 0%, #7f35a0 52%, #7a31a0 100%) !important;
  box-shadow:
    0 14px 34px rgba(113,34,137,0.14),
    inset 0 1px 0 rgba(255,255,255,0.18) !important;
}

.lm-add-to-cart.button.alt:hover,
.single_add_to_cart_button:hover,
button.single_add_to_cart_button:hover,
.woocommerce button.single_add_to_cart_button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.lm-add-to-cart.button.alt:focus,
.single_add_to_cart_button:focus,
button.single_add_to_cart_button:focus,
.woocommerce button.single_add_to_cart_button:focus,
.woocommerce a.button.alt:focus,
.woocommerce button.button.alt:focus {
  background:
    linear-gradient(135deg, #6d2084 0%, #7a2f99 52%, #752a95 100%) !important;
  box-shadow:
    0 16px 36px rgba(113,34,137,0.16),
    inset 0 1px 0 rgba(255,255,255,0.16) !important;
}

/* topbar slider + header icons + menu unified color */
.lm-topbar,
.lm-topbar--slider {
  background: #712289 !important;
  color: #fff !important;
}

.lm-topbar a,
.lm-topbar--slider a,
.lm-topbar__item,
.lm-topbar__slide {
  color: #fff !important;
}

.lm-menu a,
.lm-menu > li > a,
.lm-menu .sub-menu a,
.lm-menu > li.menu-item-has-children > a::after,
.lm-menu .sub-menu > li.menu-item-has-children > a::after,
.lm-submenu-toggle,
.lm-submenu-toggle span,
.lm-menu-toggle,
.lm-menu-toggle__label,
.lm-menu-toggle__bars span,
.lm-header-icon,
.lm-header-icon svg,
.lm-header-actions .lm-header-icon,
.lm-header-actions .lm-header-icon svg,
.lm-social-icon,
.lm-social-icon svg {
  color: #712289 !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.lm-header-icon,
.lm-header-actions .lm-header-icon,
.lm-social-icon {
  border-color: rgba(113,34,137,0.18) !important;
}

.lm-menu > li:hover > a,
.lm-menu > li:focus-within > a,
.lm-menu > li.current-menu-item > a,
.lm-menu > li.current-menu-ancestor > a,
.lm-menu .sub-menu > li:hover > a,
.lm-menu .sub-menu > li:focus-within > a,
.lm-menu .sub-menu > li.current-menu-item > a,
.lm-menu .sub-menu > li.current-menu-ancestor > a {
  color: #712289 !important;
}

/* ===== v281 isolated product-page mobile restore (no popup coupling) ===== */
.single-product .lm-product-gallery-col,
.single-product .lm-product-summary-col {
  min-width: 0 !important;
}

.single-product .lm-gallery-main-frame.lm-product-gallery-main {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.single-product .lm-gallery-main-image.lm-product-gallery-main-image,
.single-product #lmMainProductImage {
  width: 100% !important;
  max-width: 100% !important;
}

.single-product .lm-gallery-main-image.lm-product-gallery-main-image img,
.single-product #lmMainProductImage {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

@media (max-width: 980px) {
  .single-product .lm-product-shell {
    width: min(var(--container), calc(100% - 48px)) !important;
    max-width: min(var(--container), calc(100% - 48px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .single-product .lm-product-top {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .single-product .lm-product-gallery-col,
  .single-product .lm-product-summary-col {
    width: 100% !important;
    max-width: 100% !important;
  }

  .single-product .lm-product-gallery-sticky,
  .single-product .lm-product-summary-sticky {
    position: static !important;
    top: auto !important;
  }

  .single-product .lm-gallery-main-frame.lm-product-gallery-main {
    aspect-ratio: 1 / 1 !important;
    border-radius: 24px !important;
    overflow: hidden !important;
  }

  .single-product .lm-gallery-main-image.lm-product-gallery-main-image {
    padding: 0 !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    background: #f7f4f8 !important;
  }

  .single-product .variations,
  .single-product .variations tbody,
  .single-product .variations tr,
  .single-product .variations th,
  .single-product .variations td {
    display: block !important;
    width: 100% !important;
  }

  .single-product .variations th.label {
    margin: 0 0 12px !important;
    padding: 0 !important;
  }

  .single-product .variations td.value {
    margin: 0 !important;
    padding: 0 !important;
  }

  .single-product .lm-attribute-swatches {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 0 16px !important;
  }

  .single-product .lm-attribute-swatch.lm-option-card,
  .single-product .lm-option-card {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 84px !important;
    padding: 14px 12px !important;
    border-radius: 999px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .single-product .lm-option-card-title,
  .single-product .lm-attribute-swatch .lm-option-card-title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    white-space: normal !important;
    word-break: break-word !important;
    line-height: 1.3 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-align: center !important;
    margin: 0 !important;
  }

  .single-product .single_variation_wrap,
  .single-product .woocommerce-variation-add-to-cart,
  .single-product .lm-cart-row {
    width: 100% !important;
    max-width: 100% !important;
  }

  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  .single-product .lm-cart-row {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 12px !important;
    margin-top: 0 !important;
    margin-bottom: 18px !important;
    flex-wrap: nowrap !important;
  }

  .single-product .lm-cart-row .quantity.lm-qty-enhanced,
  .single-product form.cart .quantity.lm-qty-enhanced,
  .single-product .variations_form .quantity.lm-qty-enhanced,
  .single-product .single_variation_wrap .quantity.lm-qty-enhanced {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: auto !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  .single-product .lm-cart-row .quantity.lm-qty-enhanced .qty,
  .single-product form.cart .quantity.lm-qty-enhanced .qty,
  .single-product .variations_form .quantity.lm-qty-enhanced .qty,
  .single-product .single_variation_wrap .quantity.lm-qty-enhanced .qty {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
  }

  .single-product .lm-qty-btn,
  .single-product form.cart .qty-minus,
  .single-product form.cart .qty-plus,
  .single-product .variations_form .qty-minus,
  .single-product .variations_form .qty-plus {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    font-size: 1.6rem !important;
    line-height: 1 !important;
  }

  .single-product .single_add_to_cart_button.lm-add-to-cart,
  .single-product .single_add_to_cart_button,
  .single-product .single_variation_wrap .single_add_to_cart_button {
    width: 100% !important;
    min-width: 0 !important;
    height: 56px !important;
    min-height: 56px !important;
    padding: 0 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: .82rem !important;
    letter-spacing: .08em !important;
    white-space: nowrap !important;
    border-radius: 999px !important;
  }
}

@media (max-width: 640px) {
  .single-product .lm-product-shell {
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
  }

  .single-product .lm-attribute-swatches {
    gap: 10px !important;
  }

  .single-product .lm-attribute-swatch.lm-option-card,
  .single-product .lm-option-card {
    min-height: 76px !important;
    padding: 12px 10px !important;
  }

  .single-product .lm-option-card-title,
  .single-product .lm-attribute-swatch .lm-option-card-title {
    font-size: 13px !important;
  }

  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  .single-product .lm-cart-row {
    gap: 10px !important;
  }

  .single-product .lm-cart-row .quantity.lm-qty-enhanced .qty,
  .single-product form.cart .quantity.lm-qty-enhanced .qty,
  .single-product .variations_form .quantity.lm-qty-enhanced .qty,
  .single-product .single_variation_wrap .quantity.lm-qty-enhanced .qty {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
  }

  .single-product .lm-qty-btn,
  .single-product form.cart .qty-minus,
  .single-product form.cart .qty-plus,
  .single-product .variations_form .qty-minus,
  .single-product .variations_form .qty-plus {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    font-size: 1.45rem !important;
  }

  .single-product .single_add_to_cart_button.lm-add-to-cart,
  .single-product .single_add_to_cart_button,
  .single-product .single_variation_wrap .single_add_to_cart_button {
    height: 52px !important;
    min-height: 52px !important;
    font-size: .76rem !important;
  }
}


/* ===== v282 cross-sell popup isolated refresh ===== */
.lm-qcqs-popup__dialog {
  width: min(1350px, calc(100% - 32px));
  max-height: min(90vh, 940px);
  padding: 28px 28px 30px;
  border-radius: 34px;
  background: #fdfcfd;
  border: 1px solid rgba(113,34,137,0.12);
  box-shadow: 0 32px 96px rgba(0,0,0,0.16);
}
.lm-qcqs-popup__close {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px;
  min-height: 44px;
  top: 18px;
  right: 18px;
  border-radius: 50%;
  border: 1px solid rgba(113,34,137,0.24);
  background: rgba(255,255,255,0.9);
  color: var(--accent);
  font-size: 24px;
  line-height: 1;
  box-shadow: 0 10px 22px rgba(113,34,137,0.10);
  display:flex;align-items:center;justify-content:center;
}
.lm-qcqs-popup__top {margin-bottom: 18px;}
.lm-qcqs-popup__title {font-family: var(--font-serif); font-size: clamp(3rem, 5vw, 4.8rem); line-height: .95; margin:0 0 12px; max-width: 900px;}
.lm-qcqs-popup__desc {font-size: 1.15rem; line-height: 1.45; max-width: 900px; color: rgba(17,17,17,.62);}
.lm-qcqs-popup__cards {display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 28px;}
.lm-qcqs-card {display:flex; flex-direction:column; align-items:stretch; gap: 18px; padding: 26px; border-radius: 30px; background: #fff; border: 1px solid rgba(113,34,137,0.12); box-shadow: none; min-height: 650px; position: relative;}
.lm-qcqs-card:hover {transform:none; box-shadow:none; border-color: rgba(113,34,137,0.12);}
.lm-qcqs-card__check, .lm-qcqs-card__promo, .lm-qcqs-popup__actions {display:none !important;}
.lm-qcqs-card__badge {width: 58px; height: 58px; min-width: 58px; padding:0; border-radius: 50%; display:flex; align-items:center; justify-content:center; top: 10px; right: 10px; background: #ef4343; box-shadow: 0 14px 28px rgba(239,67,67,0.18); font-size: .9rem; letter-spacing:0;}
.lm-qcqs-card__image {width: 100%; height: 300px; border-radius: 26px; overflow:hidden; border: 1px solid rgba(113,34,137,0.10); background: #fff;}
.lm-qcqs-card__image img {width:100%; height:100%; object-fit:contain; padding: 22px;}
.lm-qcqs-card__content {display:flex; flex-direction:column; gap:18px; min-width:0; padding-right:0;}
.lm-qcqs-card__title {font-family: var(--font-serif); font-size: clamp(1.15rem, 2vw, 1.75rem); line-height: 1.06; color:#111; text-decoration:none; min-height: 4.25em;}
.lm-qcqs-card__price, .lm-qcqs-card__price .price {display:flex; align-items:baseline; justify-content:space-between; gap:18px; color: var(--accent); font-size: clamp(1.5rem, 2.2vw, 2.2rem); line-height:1; width:100%;}
.lm-qcqs-card__price ins {text-decoration:none; color: var(--accent);}
.lm-qcqs-card__price del {opacity:1; color: rgba(17,17,17,.36); text-decoration-thickness: 1.5px; font-size: .8em; margin:0 0 0 auto;}
.lm-qcqs-card__cta.btn, .lm-qcqs-card__cta {display:inline-flex; align-items:center; justify-content:center; align-self:flex-start; min-width: 380px; height: 56px; padding: 0 26px; border-radius: 999px; font-size: 15px; letter-spacing: .08em; text-transform: uppercase; color:#fff; background: linear-gradient(90deg, #6d238d 0%, #9442c1 100%); box-shadow: 0 18px 36px rgba(113,34,137,.18); border:0; cursor:pointer;}
.lm-qcqs-card__cta:hover {transform: translateY(-1px);}
@media (max-width: 900px) {
  .lm-qcqs-popup__dialog {width: min(94vw, 780px); padding: 22px 18px 22px;}
  .lm-qcqs-popup__title {font-size: clamp(2.4rem, 10vw, 3.2rem); max-width:none; padding-right: 56px;}
  .lm-qcqs-popup__desc {font-size: 1rem; margin-bottom: 10px;}
  .lm-qcqs-popup__cards {grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px;}
  .lm-qcqs-card {padding: 14px; min-height: auto; gap: 12px; border-radius: 24px;}
  .lm-qcqs-card__image {height: 160px; border-radius: 20px;}
  .lm-qcqs-card__image img {padding: 14px;}
  .lm-qcqs-card__badge {width: 52px; height: 52px; min-width:52px; top: 8px; right: 8px; font-size: .82rem;}
  .lm-qcqs-card__title {font-size: 1rem; min-height: 3.4em;}
  .lm-qcqs-card__price, .lm-qcqs-card__price .price {font-size: 1rem; gap: 10px;}
  .lm-qcqs-card__cta.btn, .lm-qcqs-card__cta {width: 100%; min-width:0; height: 44px; font-size: 11px; padding: 0 10px;}
}

/* ===== v283 consolidated fixes: popup/buttons/product mobile ===== */

/* exact 44px circular close buttons for wishlist/search/cross-sell */
button.lm-wishlist-modal__close,
button.lm-qcqs-popup__close,
button.lm-search-modal__close {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  max-width: 44px !important;
  max-height: 44px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 44px !important;
  aspect-ratio: 1 / 1 !important;
  line-height: 1 !important;
}

/* unified shimmering purple buttons */
.lm-qcqs-card__cta,
.lm-qcqs-card__cta.btn,
.lm-archive-card-btn--cart,
.lm-search-modal button[type="submit"],
.lm-search-modal .search-submit,
.woocommerce-form-login .woocommerce-button,
.woocommerce-form-register .woocommerce-button,
body.woocommerce-account .woocommerce-form-login__submit,
body.woocommerce-account .woocommerce-form-register__submit,
.lm-wishlist-modal__button {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  border: none !important;
  color: #fff !important;
  background: linear-gradient(135deg, #4a1768 0%, #612183 38%, #7a39a4 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 8px 22px rgba(111,44,143,0.16) !important;
}
.lm-qcqs-card__cta::before,
.lm-qcqs-card__cta.btn::before,
.lm-archive-card-btn--cart::before,
.lm-search-modal button[type="submit"]::before,
.lm-search-modal .search-submit::before,
.woocommerce-form-login .woocommerce-button::before,
.woocommerce-form-register .woocommerce-button::before,
body.woocommerce-account .woocommerce-form-login__submit::before,
body.woocommerce-account .woocommerce-form-register__submit::before,
.lm-wishlist-modal__button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.08) 22%, rgba(255,255,255,0.22) 34%, rgba(255,255,255,0.05) 48%, rgba(255,255,255,0) 62%);
  opacity: .55;
  pointer-events: none;
}
.lm-qcqs-card__cta::after,
.lm-qcqs-card__cta.btn::after,
.lm-archive-card-btn--cart::after,
.lm-search-modal button[type="submit"]::after,
.lm-search-modal .search-submit::after,
.woocommerce-form-login .woocommerce-button::after,
.woocommerce-form-register .woocommerce-button::after,
body.woocommerce-account .woocommerce-form-login__submit::after,
body.woocommerce-account .woocommerce-form-register__submit::after,
.lm-wishlist-modal__button::after {
  content: "";
  position: absolute;
  top: -12%;
  left: -38%;
  width: 32%;
  height: 124%;
  background: linear-gradient(100deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.1) 20%, rgba(255,255,255,0.5) 48%, rgba(255,255,255,0.14) 72%, rgba(255,255,255,0) 100%);
  transform: skewX(-22deg);
  pointer-events: none;
}
@media (hover: hover) {
  .lm-qcqs-card__cta:hover::after,
  .lm-qcqs-card__cta.btn:hover::after,
  .lm-archive-card-btn--cart:hover::after,
  .lm-search-modal button[type="submit"]:hover::after,
  .lm-search-modal .search-submit:hover::after,
  .woocommerce-form-login .woocommerce-button:hover::after,
  .woocommerce-form-register .woocommerce-button:hover::after,
  body.woocommerce-account .woocommerce-form-login__submit:hover::after,
  body.woocommerce-account .woocommerce-form-register__submit:hover::after,
  .lm-wishlist-modal__button:hover::after {
    animation: lmButtonShine 1.05s ease forwards;
  }
  .lm-qcqs-card__cta:hover,
  .lm-qcqs-card__cta.btn:hover,
  .lm-archive-card-btn--cart:hover,
  .lm-search-modal button[type="submit"]:hover,
  .lm-search-modal .search-submit:hover,
  .woocommerce-form-login .woocommerce-button:hover,
  .woocommerce-form-register .woocommerce-button:hover,
  body.woocommerce-account .woocommerce-form-login__submit:hover,
  body.woocommerce-account .woocommerce-form-register__submit:hover,
  .lm-wishlist-modal__button:hover {
    filter: brightness(1.02);
  }
}

/* cross-sell popup refined without tying to product add-to-cart layout */
.lm-qcqs-popup__dialog {
  width: min(1160px, calc(100% - 40px)) !important;
  max-height: calc(100vh - 48px) !important;
  overflow: hidden !important;
  padding: 24px 24px 24px !important;
}
.lm-qcqs-popup__cards {
  gap: 18px !important;
}
.lm-qcqs-card {
  min-height: 0 !important;
  gap: 14px !important;
  padding: 24px !important;
}
.lm-qcqs-card__image {
  height: 270px !important;
}
.lm-qcqs-card__image img {
  padding: 18px !important;
}
.lm-qcqs-card__title {
  min-height: 3.25em !important;
}
.lm-qcqs-card__price,
.lm-qcqs-card__price .price {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  font-size: 0.98rem !important;
  line-height: 1 !important;
  color: var(--accent) !important;
  font-weight: 600 !important;
}
.lm-qcqs-card__price ins,
.lm-qcqs-card__price .price ins,
.lm-qcqs-card__price .woocommerce-Price-amount {
  color: var(--accent) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.lm-qcqs-card__price del,
.lm-qcqs-card__price .price del {
  margin-left: auto !important;
  font-size: 0.92em !important;
  color: rgba(113,34,137,0.42) !important;
  opacity: 1 !important;
  text-decoration-thickness: 1px !important;
}
.lm-qcqs-card__cta,
.lm-qcqs-card__cta.btn {
  width: 100% !important;
  min-width: 0 !important;
  height: 50px !important;
  min-height: 50px !important;
  padding: 0 18px !important;
  font-size: 0.82rem !important;
}

/* keep both products visible on mobile without vertical scroll */
@media (max-width: 900px) {
  .lm-qcqs-popup__dialog {
    width: min(96vw, 820px) !important;
    max-height: calc(100vh - 22px) !important;
    padding: 18px 16px 16px !important;
  }
  .lm-qcqs-popup__title {
    font-size: clamp(2.2rem, 8vw, 3.1rem) !important;
    margin-bottom: 8px !important;
  }
  .lm-qcqs-popup__desc {
    font-size: .98rem !important;
    margin-bottom: 4px !important;
  }
  .lm-qcqs-popup__cards {
    gap: 12px !important;
  }
  .lm-qcqs-card {
    padding: 12px !important;
    gap: 10px !important;
  }
  .lm-qcqs-card__image {
    height: 120px !important;
  }
  .lm-qcqs-card__image img {
    padding: 20px !important;
  }
  .lm-qcqs-card__title {
    min-height: 3.05em !important;
    font-size: 0.92rem !important;
    line-height: 1.04 !important;
  }
  .lm-qcqs-card__price,
  .lm-qcqs-card__price .price {
    font-size: .9rem !important;
  }
  .lm-qcqs-card__cta,
  .lm-qcqs-card__cta.btn {
    height: 40px !important;
    min-height: 40px !important;
    font-size: .72rem !important;
    letter-spacing: .05em !important;
  }
}

/* product page mobile: margins like category pages, variants in their own row above qty+cta */
@media (max-width: 980px) {
  .single-product .lm-product-page {
    overflow-x: clip !important;
  }
  .single-product .lm-product-shell {
    width: min(var(--container), calc(100% - 32px)) !important;
    max-width: min(var(--container), calc(100% - 32px)) !important;
    margin-inline: auto !important;
  }
  .single-product .lm-product-top {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .single-product .lm-product-gallery-col,
  .single-product .lm-product-summary-col,
  .single-product .lm-product-block,
  .single-product .variations_form,
  .single-product .single_variation_wrap,
  .single-product .woocommerce-variation-add-to-cart {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .single-product .lm-gallery-main-frame.lm-product-gallery-main {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 24px !important;
    overflow: hidden !important;
  }
  .single-product .lm-gallery-main-image,
  .single-product .lm-product-gallery-main-image,
  .single-product #lmMainProductImage {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
  }
  .single-product .lm-gallery-main-image img,
  .single-product .lm-product-gallery-main-image img,
  .single-product #lmMainProductImage {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
  .single-product .variations {
    display: block !important;
    width: 100% !important;
    margin-bottom: 14px !important;
  }
  .single-product .variations tbody,
  .single-product .variations tr,
  .single-product .variations th,
  .single-product .variations td {
    display: block !important;
    width: 100% !important;
  }
  .single-product .variations th.label {
    margin: 0 0 10px !important;
    padding: 0 !important;
  }
  .single-product .variations td.value {
    padding: 0 !important;
  }
  .single-product .lm-attribute-swatches {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 0 14px !important;
  }
  .single-product .lm-attribute-swatch.lm-option-card,
  .single-product .lm-option-card {
    width: 100% !important;
    min-height: 74px !important;
    padding: 12px 10px !important;
    border-radius: 999px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    overflow: hidden !important;
  }
  .single-product .lm-option-card-title,
  .single-product .lm-attribute-swatch .lm-option-card-title {
    font-size: 13px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    text-align: center !important;
    margin: 0 !important;
  }
  .single-product .single_variation_wrap {
    display: block !important;
    margin-top: 0 !important;
  }
  .single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  .single-product .lm-cart-row {
    display: grid !important;
    grid-template-columns: auto minmax(0,1fr) !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    margin-top: 0 !important;
  }
  .single-product .lm-cart-row .quantity.lm-qty-enhanced,
  .single-product .single_variation_wrap .quantity.lm-qty-enhanced {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: auto !important;
    margin: 0 !important;
  }
  .single-product .lm-cart-row .quantity.lm-qty-enhanced .qty,
  .single-product .single_variation_wrap .quantity.lm-qty-enhanced .qty {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
  }
  .single-product .lm-qty-btn,
  .single-product .qty-minus,
  .single-product .qty-plus {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    font-size: 1.45rem !important;
  }
  .single-product .single_add_to_cart_button,
  .single-product .single_variation_wrap .single_add_to_cart_button {
    width: 100% !important;
    height: 56px !important;
    min-height: 56px !important;
    white-space: nowrap !important;
  }
}



/* ===== v286 wishlist/card polish ===== */

/* topbar on product cards: badge left, wishlist right, same baseline */
.lm-card-topbar {
  position: absolute !important;
  top: 28px !important;
  left: 28px !important;
  right: 28px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  z-index: 6 !important;
  pointer-events: none !important;
}
.lm-card-topbar__left,
.lm-card-topbar__right {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  pointer-events: auto !important;
}
.lm-card-topbar__right { justify-content: flex-end !important; margin-left: auto !important; }

/* remove older absolute badge placement and align with topbar */
.lm-card-topbar .lm-sale-discount-badge,
.woocommerce ul.products li.product .lm-card-topbar .lm-sale-discount-badge,
.woocommerce ul.products li.product .lm-card-topbar .onsale {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  margin: 0 !important;
}

/* wishlist button circle with consistent heart */
.lm-wishlist-button,
.lm-header-icon--wishlist {
  position: relative;
}
.lm-wishlist-button {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  border-radius: 50% !important;
  border: 1.5px solid #dccae8 !important;
  background: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 10px 24px rgba(113,34,137,0.08) !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease !important;
}
.lm-wishlist-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(113,34,137,0.14) !important;
}
.lm-wishlist-button svg,
.lm-header-icon--wishlist svg {
  width: 24px;
  height: 24px;
  display: block;
}
.lm-wishlist-button svg path,
.lm-header-icon--wishlist svg path {
  stroke-width: 2.5 !important;
  vector-effect: non-scaling-stroke;
}
.lm-wishlist-button svg { color: #712289 !important; }
.lm-wishlist-button.is-active,
.lm-wishlist-button[aria-pressed="true"],
.lm-wishlist-button[data-in-wishlist="1"] {
  background: linear-gradient(135deg, #6d2388 0%, #8f46be 52%, #7a35a6 100%) !important;
  border-color: #712289 !important;
  box-shadow: 0 14px 30px rgba(113,34,137,0.22) !important;
}
.lm-wishlist-button.is-active::after,
.lm-wishlist-button[aria-pressed="true"]::after,
.lm-wishlist-button[data-in-wishlist="1"]::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(115deg, transparent 22%, rgba(255,255,255,.18) 45%, transparent 68%);
  pointer-events: none;
}
.lm-wishlist-button.is-active svg,
.lm-wishlist-button[aria-pressed="true"] svg,
.lm-wishlist-button[data-in-wishlist="1"] svg {
  color: #fff !important;
}

/* make header wishlist counter match cart counter */
.lm-wishlist-count,
.lm-cart-count {
  position: absolute;
  top: -5px;
  right: -5px;
  min-width: 20px;
  height: 20px;
  border-radius: 999px;
  background: var(--accent);
  color: #fff;
  font-size: .7rem;
  line-height: 1;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
  box-sizing: border-box;
}
.lm-wishlist-count:empty {
  display: none !important;
}
.lm-header-icon--wishlist {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(17,17,17,0.10);
  background: rgba(255,255,255,0.78);
  text-decoration: none;
  position: relative;
}

/* hide count when zero if inline style not set yet */
.lm-wishlist-count[data-count="0"] { display:none !important; }

/* mobile proportions */

@media (max-width: 767px) {
  .lm-card-topbar {
    top: 18px !important;
    left: 18px !important;
    right: 18px !important;
  }
  .lm-card-topbar .lm-sale-discount-badge,
  .woocommerce ul.products li.product .lm-card-topbar .lm-sale-discount-badge,
  .woocommerce ul.products li.product .lm-card-topbar .onsale {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    font-size: 14px !important;
  }
  .lm-card-topbar .lm-wishlist-button {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
  }
  .lm-card-topbar .lm-wishlist-button svg { width: 22px; height: 22px; }
}


/* v287 wishlist icon visibility + unified heart */
.lm-wishlist-button {
  font-size: 0 !important;
}
.lm-wishlist-button svg,
.lm-header-icon--wishlist svg {
  position: relative;
  z-index: 2;
  width: 24px !important;
  height: 24px !important;
  display: block !important;
  color: #712289 !important;
  fill: none !important;
}
.lm-wishlist-button svg path,
.lm-header-icon--wishlist svg path {
  stroke-width: 2.7 !important;
  vector-effect: non-scaling-stroke;
}
.lm-wishlist-button.is-active svg,
.lm-wishlist-button[aria-pressed="true"] svg,
.lm-wishlist-button[data-in-wishlist="1"] svg,
.lm-header-icon--wishlist.is-active svg {
  color: #fff !important;
}
.lm-wishlist-button::after {
  z-index: 1;
}

/* align product-card topbar sides consistently */
.lm-card-topbar {
  width: calc(100% - 56px) !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  top: 28px !important;
  left: 28px !important;
  right: 28px !important;
}
.lm-card-topbar__left,
.lm-card-topbar__right {
  display: flex !important;
  align-items: flex-start !important;
}
.lm-card-topbar__right .lm-wishlist-button {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  margin: 0 !important;
}

@media (max-width: 767px) {
  .lm-card-topbar {
    width: calc(100% - 36px) !important;
    top: 18px !important;
    left: 18px !important;
    right: 18px !important;
  }
}


/* ===== v288 wishlist icon refinement ===== */
/* Header wishlist icon same visual weight as search/cart */
.lm-header-icon--wishlist {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  border-radius: 50% !important;
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.lm-header-icon--wishlist svg {
  width: 20px !important;
  height: 20px !important;
  display: block !important;
  color: #712289 !important;
  fill: none !important;
}
.lm-header-icon--wishlist svg path {
  stroke-width: 2.9 !important;
  stroke: currentColor !important;
  fill: none !important;
  vector-effect: non-scaling-stroke;
}

/* Archive / cards wishlist icon visibly centered in circle */
.lm-wishlist-button {
  color: #712289 !important;
}
.lm-wishlist-button svg {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
  color: currentColor !important;
  fill: none !important;
}
.lm-wishlist-button svg path {
  stroke: currentColor !important;
  fill: none !important;
  stroke-width: 2.9 !important;
  vector-effect: non-scaling-stroke;
}
.lm-wishlist-button.is-active,
.lm-wishlist-button[aria-pressed="true"],
.lm-wishlist-button[data-in-wishlist="1"] {
  color: #fff !important;
}
.lm-wishlist-button.is-active svg,
.lm-wishlist-button[aria-pressed="true"] svg,
.lm-wishlist-button[data-in-wishlist="1"] svg {
  color: #fff !important;
}
.lm-wishlist-button.is-active svg path,
.lm-wishlist-button[aria-pressed="true"] svg path,
.lm-wishlist-button[data-in-wishlist="1"] svg path {
  stroke: currentColor !important;
}

/* Card topbar: discount left, wishlist right, same row */
.lm-card-topbar {
  position: absolute !important;
  top: 28px !important;
  left: 28px !important;
  right: 28px !important;
  width: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  pointer-events: none;
  z-index: 4;
}
.lm-card-topbar__left,
.lm-card-topbar__right {
  display: flex !important;
  align-items: center !important;
  pointer-events: auto;
}
.lm-card-topbar .lm-sale-discount-badge,
.woocommerce ul.products li.product .lm-card-topbar .lm-sale-discount-badge,
.woocommerce ul.products li.product .lm-card-topbar .onsale {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  margin: 0 !important;
}
.lm-card-topbar__right .lm-wishlist-button {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  margin: 0 !important;
}

/* Make wishlist counter match cart counter more closely */
.lm-wishlist-count {
  min-width: 22px !important;
  height: 22px !important;
  padding: 0 5px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  top: -6px !important;
  right: -6px !important;
  line-height: 1 !important;
}


@media (max-width: 767px) {
  .lm-card-topbar {
    top: 18px !important;
    left: 18px !important;
    right: 18px !important;
  }
  .lm-card-topbar .lm-sale-discount-badge,
  .woocommerce ul.products li.product .lm-card-topbar .lm-sale-discount-badge,
  .woocommerce ul.products li.product .lm-card-topbar .onsale {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    font-size: 14px !important;
  }
  .lm-card-topbar__right .lm-wishlist-button {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
  }
  .lm-wishlist-button svg {
    width: 20px !important;
    height: 20px !important;
  }
  .lm-header-icon--wishlist svg {
    width: 18px !important;
    height: 18px !important;
  }
}



/* ===== v289 final wishlist/icon/card topbar unification ===== */
.lm-card-topbar{
  position:absolute !important;
  top:28px !important;
  left:28px !important;
  right:28px !important;
  z-index:8 !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  pointer-events:none !important;
}
.lm-card-topbar > *{pointer-events:auto !important;}
.lm-card-topbar__left,
.lm-card-topbar__right{
  display:flex !important;
  align-items:flex-start !important;
}
.lm-card-topbar__right{
  margin-left:auto !important;
  justify-content:flex-end !important;
}
.lm-card-topbar .lm-sale-discount-badge,
.lm-card-topbar .onsale{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  margin:0 !important;
}
.lm-product-card .lm-sale-discount-badge,
.product-card .lm-sale-discount-badge,
.woocommerce ul.products li.product .lm-sale-discount-badge,
.woocommerce ul.products li.product .onsale{
  position:relative !important;
  width:60px !important;
  height:60px !important;
  min-width:60px !important;
  min-height:60px !important;
  border-radius:50% !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#d72638 !important;
  color:#fff !important;
  font-weight:700 !important;
  font-size:15px !important;
  line-height:1 !important;
  box-shadow:0 12px 26px rgba(215,38,56,.2) !important;
}
.lm-wishlist-button{
  position:relative !important;
  width:56px !important;
  height:56px !important;
  min-width:56px !important;
  min-height:56px !important;
  max-width:56px !important;
  max-height:56px !important;
  border-radius:50% !important;
  border:1.5px solid #dccae8 !important;
  background:#fff !important;
  color:#712289 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  overflow:hidden !important;
  box-shadow:0 10px 24px rgba(113,34,137,.08) !important;
}
.lm-wishlist-button .lm-wishlist-icon{
  position:relative !important;
  z-index:2 !important;
  width:22px !important;
  height:22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
}
.lm-wishlist-button .lm-wishlist-icon svg{
  width:22px !important;
  height:22px !important;
  display:block !important;
  overflow:visible !important;
}
.lm-wishlist-button .lm-wishlist-icon path{
  stroke:currentColor !important;
  fill:none !important;
  stroke-width:2.85 !important;
  vector-effect:non-scaling-stroke !important;
}
.lm-wishlist-button.is-active,
.lm-wishlist-button[aria-pressed="true"],
.lm-wishlist-button[data-in-wishlist="1"]{
  background:linear-gradient(135deg,#6d2388 0%,#8f46be 52%,#7a35a6 100%) !important;
  border-color:#712289 !important;
  color:#fff !important;
}
.lm-wishlist-button.is-active::after,
.lm-wishlist-button[aria-pressed="true"]::after,
.lm-wishlist-button[data-in-wishlist="1"]::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg,transparent 22%,rgba(255,255,255,.18) 45%,transparent 68%);
  pointer-events:none;
  z-index:1;
}
.lm-header-icon--wishlist{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  border-radius:50% !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.lm-header-icon--wishlist svg{
  width:18px !important;
  height:18px !important;
  display:block !important;
}
.lm-header-icon--wishlist svg path{
  stroke-width:2.7 !important;
  vector-effect:non-scaling-stroke !important;
}
.lm-wishlist-count,
.lm-header-icon--wishlist .lm-wishlist-count{
  position:absolute !important;
  top:-5px !important;
  right:-5px !important;
  min-width:20px !important;
  height:20px !important;
  padding:0 4px !important;
  border-radius:999px !important;
  background:var(--accent) !important;
  color:#fff !important;
  font-size:.7rem !important;
  font-weight:700 !important;
  line-height:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
}
.lm-wishlist-count:empty{display:none !important;}

@media (max-width: 767px){
  .lm-card-topbar{
    top:18px !important;
    left:18px !important;
    right:18px !important;
  }
  .lm-product-card .lm-sale-discount-badge,
  .product-card .lm-sale-discount-badge,
  .woocommerce ul.products li.product .lm-sale-discount-badge,
  .woocommerce ul.products li.product .onsale{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    min-height:52px !important;
    font-size:14px !important;
  }
  .lm-wishlist-button{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    min-height:52px !important;
    max-width:52px !important;
    max-height:52px !important;
  }
  .lm-wishlist-button .lm-wishlist-icon,
  .lm-wishlist-button .lm-wishlist-icon svg{
    width:20px !important;
    height:20px !important;
  }
}



/* === Wishlist final heart visibility fix === */
.lm-wishlist-button{
  position:relative;
  width:56px;
  height:56px;
  min-width:56px;
  min-height:56px;
  border-radius:50%;
  border:1.5px solid #dccae8;
  background:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#712289;
  overflow:hidden;
}
.lm-wishlist-button svg{
  width:22px !important;
  height:22px !important;
  display:block;
  stroke:currentColor !important;
  fill:none !important;
  stroke-width:2.4 !important;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.lm-wishlist-button.is-active,
.lm-wishlist-button[aria-pressed="true"],
.lm-wishlist-button[data-in-wishlist="1"]{
  background:linear-gradient(135deg,#6d2388 0%,#8f46be 52%,#7a35a6 100%);
  border-color:#712289;
  color:#fff;
}
.lm-wishlist-button.is-active::after,
.lm-wishlist-button[aria-pressed="true"]::after,
.lm-wishlist-button[data-in-wishlist="1"]::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.18) 45%,transparent 72%);
  pointer-events:none;
}




/* === Wishlist SVG fast render / pagination-safe === */
.lm-wishlist-button{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.lm-wishlist-button .lm-wishlist-icon-svg,
.lm-wishlist-button svg{
  width:22px;
  height:22px;
  display:block;
  color:#712289;
  stroke:currentColor !important;
  fill:none !important;
  pointer-events:none;
  flex:0 0 auto;
}
.lm-wishlist-button.is-active .lm-wishlist-icon-svg,
.lm-wishlist-button.is-active svg,
.lm-wishlist-button[aria-pressed="true"] .lm-wishlist-icon-svg,
.lm-wishlist-button[aria-pressed="true"] svg,
.lm-wishlist-button[data-in-wishlist="1"] .lm-wishlist-icon-svg,
.lm-wishlist-button[data-in-wishlist="1"] svg{
  color:#fff;
}
.header-wishlist .lm-wishlist-button .lm-wishlist-icon-svg,
.header-wishlist .lm-wishlist-button svg,
a.lm-header-icon--wishlist svg,
a.lm-header-icon--wishlist .lm-wishlist-icon-svg{
  width:18px;
  height:18px;
}



/* === v295 homepage + wishlist cleanup === */
@media (max-width: 768px) {
  .hero-slider .action-area .btn-secondary {
    display: none !important;
  }
}

.support-content .support-label,
.meditation-content .meditation-label,
.newsletter-copy .newsletter-label {
  margin-bottom: 1.1rem;
}

.support-left .support-label,
.meditation-left .meditation-label {
  display: none !important;
}

.lm-header-icon--wishlist,
.lm-wishlist-button {
  position: relative;
}

.lm-header-icon--wishlist .lm-wishlist-icon,
.lm-wishlist-button .lm-wishlist-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  line-height: 1 !important;
}

.lm-header-icon--wishlist .lm-heart-icon-svg,
.lm-wishlist-button .lm-heart-icon-svg {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  overflow: visible !important;
}

.lm-header-icon--wishlist .lm-heart-icon-svg path,
.lm-wishlist-button .lm-heart-icon-svg path {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.1 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  vector-effect: non-scaling-stroke;
}

.lm-wishlist-button {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  max-width: 56px !important;
  max-height: 56px !important;
  border-radius: 50% !important;
  border: 1.5px solid #dccae8 !important;
  background: #fff !important;
  color: #712289 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 10px 24px rgba(113,34,137,.08) !important;
}

.lm-wishlist-button::after,
.lm-wishlist-button::before {
  display: none !important;
  content: none !important;
}

.lm-wishlist-button.is-active,
.lm-wishlist-button[aria-pressed="true"],
.lm-wishlist-button[data-in-wishlist="1"] {
  background: #fff !important;
  border-color: #712289 !important;
  color: #712289 !important;
}

.lm-header-icon--wishlist {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #712289 !important;
}


@media (max-width: 767px) {
  .lm-wishlist-button {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
  }
}


/* Categories section alignment + mobile newsletter order */
.categories-header,
.categories-kicker {
  display: none !important;
}

.categories-grid {
  align-items: stretch;
}

.categories-left,
.categories-right,
.category-visual,
.category-visual-card {
  height: 100%;
}

.categories-left {
  display: flex;
  flex-direction: column;
  justify-content: stretch;
}

.categories-list {
  margin-top: 0;
}

@media (max-width: 768px) {
  .newsletter-grid {
    display: flex;
    flex-direction: column;
  }

  .newsletter-image {
    order: -1;
  }
}


/* ===== v301 blog archive + single ===== */
.lm-blog-page,
.lm-blog-single {
  padding: 26px 0 96px;
  position: relative;
  z-index: 1;
}

.lm-blog-shell {
  width: var(--container);
  margin: 0 auto;
}

.lm-blog-kicker,
.lm-blog-section-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--accent);
}

.lm-blog-kicker::before,
.lm-blog-section-kicker::before {
  content: "";
  width: 28px;
  height: 1px;
  background: currentColor;
  display: inline-block;
}

.lm-blog-hero {
  padding: 44px 0 24px;
  border-top: 1px solid rgba(78, 15, 88, 0.10);
}

.lm-blog-hero__grid {
  margin-top: 26px;
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(280px, 0.7fr);
  gap: 30px;
  align-items: end;
}

.lm-blog-hero__title {
  margin: 0;
  font-family: var(--font-serif);
  font-weight: 300;
  font-size: clamp(42px, 7vw, 88px);
  line-height: 0.95;
  letter-spacing: -0.045em;
  max-width: 12ch;
}

.lm-blog-hero__lead {
  margin: 22px 0 0;
  max-width: 760px;
  font-size: 19px;
  line-height: 1.75;
  color: var(--text-color);
}

.lm-blog-hero__description {
  margin-top: 16px;
  max-width: 760px;
  display: grid;
  gap: 14px;
}

.lm-blog-hero__description p {
  margin: 0;
  font-size: 17px;
  line-height: 1.85;
  color: var(--muted-text);
}

.lm-blog-topic-list {
  margin-top: 26px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.lm-blog-topic-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 18px;
  border-radius: 999px;
  text-decoration: none;
  color: var(--accent-dark);
  border: 1px solid rgba(78, 15, 88, 0.14);
  background: rgba(255,255,255,0.58);
  backdrop-filter: blur(12px);
  transition: transform .22s ease, border-color .22s ease, color .22s ease;
}

.lm-blog-topic-pill:hover {
  transform: translateY(-1px);
  border-color: rgba(113,34,137,0.35);
  color: var(--accent);
}

.lm-blog-hero__aside {
  display: flex;
  justify-content: flex-end;
}

.lm-blog-hero-stat {
  padding: 26px 28px;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(255,255,255,0.82), rgba(246,241,248,0.9));
  border: 1px solid rgba(78, 15, 88, 0.10);
  box-shadow: 0 22px 56px rgba(78,15,88,0.08);
  max-width: 320px;
  color: var(--muted-text);
  line-height: 1.7;
}

.lm-blog-hero-stat span {
  display: block;
  font-family: var(--font-serif);
  font-size: 60px;
  line-height: 0.95;
  letter-spacing: -0.05em;
  color: var(--accent-dark);
  margin-bottom: 10px;
}

.lm-blog-featured,
.lm-blog-listing,
.lm-blog-related {
  margin-top: 54px;
}

.lm-blog-section-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 20px;
  align-items: end;
  margin-bottom: 28px;
}

.lm-blog-section-head h2 {
  margin: 12px 0 0;
  font-family: var(--font-serif);
  font-size: clamp(32px, 4.2vw, 54px);
  line-height: 0.98;
  letter-spacing: -0.04em;
  font-weight: 300;
}

.lm-blog-card {
  display: grid;
  grid-template-columns: 1fr;
  border-radius: 32px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,0.86), rgba(247,242,249,0.92));
  border: 1px solid rgba(78,15,88,0.10);
  box-shadow: 0 24px 60px rgba(78,15,88,0.08);
}

.lm-blog-card--featured {
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
}

.lm-blog-card__image {
  display: block;
  position: relative;
  min-height: 320px;
  overflow: hidden;
}

.lm-blog-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .8s ease;
}

.lm-blog-card:hover .lm-blog-card__image img {
  transform: scale(1.04);
}

.lm-blog-card__body {
  padding: 30px 30px 34px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.lm-blog-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(17,17,17,0.56);
}

.lm-blog-card__meta span {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.lm-blog-card__meta span:not(:first-child)::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(113,34,137,0.35);
  display: inline-block;
}

.lm-blog-card__category {
  text-decoration: none;
  color: var(--accent);
  font-weight: 700;
}

.lm-blog-card__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.02;
  font-weight: 300;
  letter-spacing: -0.035em;
}

.lm-blog-card:not(.lm-blog-card--featured) .lm-blog-card__title {
  font-size: clamp(22px, 1.8vw, 32px);
}

.lm-blog-card__title a {
  text-decoration: none;
}

.lm-blog-card__excerpt {
  margin: 0;
  font-size: 17px;
  line-height: 1.8;
  color: var(--muted-text);
}

.lm-blog-card__link {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.14em;
  font-size: 12px;
  color: var(--accent-dark);
}

.lm-blog-card__link::after {
  content: "→";
  font-size: 16px;
}

.lm-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.lm-blog-grid .lm-blog-card {
  height: 100%;
}

.lm-blog-grid .lm-blog-card__image {
  aspect-ratio: 5 / 4;
  min-height: unset;
}

.lm-blog-grid .lm-blog-card__body {
  padding: 24px 24px 28px;
}

.lm-blog-grid .lm-blog-card__excerpt {
  font-size: 15px;
  line-height: 1.75;
}

.lm-blog-empty {
  padding: 36px 32px;
  border-radius: 28px;
  background: rgba(255,255,255,0.7);
  border: 1px solid rgba(78,15,88,0.10);
}

.lm-blog-listing .page-numbers {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  margin: 34px 0 0;
}

.lm-blog-listing .page-numbers a,
.lm-blog-listing .page-numbers span {
  min-width: 44px;
  height: 44px;
  padding: 0 14px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background: rgba(255,255,255,0.7);
  border: 1px solid rgba(78,15,88,0.12);
  color: var(--accent-dark);
}

.lm-blog-listing .page-numbers .current {
  background: var(--accent);
  color: #fff;
  border-color: var(--accent);
}

/* single */
.lm-blog-single-hero {
  padding-top: 38px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.88fr);
  gap: 34px;
  align-items: center;
}

.lm-blog-single-hero__copy,
.lm-blog-single-hero__media {
  min-width: 0;
}

.lm-blog-single__title {
  margin: 16px 0 0;
  font-family: var(--font-serif);
  font-size: clamp(34px, 5.4vw, 68px);
  line-height: 0.98;
  font-weight: 300;
  letter-spacing: -0.04em;
  max-width: 13ch;
}

.lm-blog-single__meta {
  margin-top: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(17,17,17,0.58);
}

.lm-blog-single__meta span {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.lm-blog-single__meta span:not(:first-child)::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(113,34,137,0.35);
  display: inline-block;
}

.lm-blog-single__lead {
  margin: 22px 0 0;
  font-size: 20px;
  line-height: 1.8;
  color: var(--muted-text);
  max-width: 700px;
}

.lm-blog-single-hero__media {
  border-radius: 34px;
  overflow: hidden;
  aspect-ratio: 5 / 4;
  min-height: unset;
  box-shadow: 0 26px 70px rgba(78,15,88,0.08);
}

.lm-blog-single-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lm-blog-single-body {
  margin-top: 52px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 30px;
  align-items: start;
}

.lm-blog-single-content {
  min-width: 0;
  padding: 40px clamp(24px, 4vw, 52px);
  border-radius: 32px;
  background: linear-gradient(180deg, rgba(255,255,255,0.86), rgba(247,242,249,0.92));
  border: 1px solid rgba(78,15,88,0.10);
  box-shadow: 0 24px 60px rgba(78,15,88,0.08);
  font-size: 18px;
  line-height: 1.9;
  color: rgba(17,17,17,0.86);
}

.lm-blog-single-content > *:first-child {
  margin-top: 0;
}

.lm-blog-single-content > *:last-child {
  margin-bottom: 0;
}

.lm-blog-single-content h2,
.lm-blog-single-content h3,
.lm-blog-single-content h4 {
  font-family: var(--font-serif);
  font-weight: 300;
  line-height: 1.02;
  letter-spacing: -0.04em;
  color: var(--text-color);
  margin: 1.5em 0 0.5em;
}

.lm-blog-single-content h2 {
  font-size: clamp(32px, 4vw, 52px);
}

.lm-blog-single-content h3 {
  font-size: clamp(28px, 3vw, 40px);
}

.lm-blog-single-content p,
.lm-blog-single-content ul,
.lm-blog-single-content ol {
  margin: 0 0 1.2em;
}

.lm-blog-single-content ul,
.lm-blog-single-content ol {
  padding-left: 1.25em;
}

.lm-blog-single-content blockquote {
  margin: 1.8em 0;
  padding: 24px 26px;
  border-left: 2px solid var(--accent-soft);
  background: rgba(255,255,255,0.55);
  border-radius: 0 24px 24px 0;
  font-family: var(--font-serif);
  font-size: 28px;
  line-height: 1.25;
  letter-spacing: -0.03em;
}

.lm-blog-single-content img,
.lm-blog-single-content figure,
.lm-blog-single-content .wp-block-image {
  border-radius: 26px;
  overflow: hidden;
}

.lm-blog-single-content a {
  color: var(--accent);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.lm-blog-single-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.6em 0;
}

.lm-blog-single-content th,
.lm-blog-single-content td {
  border-bottom: 1px solid rgba(78,15,88,0.12);
  padding: 12px 10px;
  text-align: left;
}

.lm-blog-single-aside {
  position: sticky;
  top: 110px;
  display: grid;
  gap: 18px;
}

.lm-blog-aside-card {
  padding: 24px 24px 26px;
  border-radius: 28px;
  background: rgba(255,255,255,0.72);
  border: 1px solid rgba(78,15,88,0.10);
  box-shadow: 0 18px 42px rgba(78,15,88,0.06);
}

.lm-blog-meta-list {
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
  display: grid;
  gap: 12px;
  color: var(--muted-text);
}

.lm-blog-meta-list a {
  color: var(--accent-dark);
  text-decoration: none;
}

.lm-blog-share-list {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.lm-blog-share-list a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  text-decoration: none;
  background: rgba(255,255,255,0.8);
  border: 1px solid rgba(78,15,88,0.12);
  color: var(--accent-dark);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 700;
}

.lm-blog-post-nav {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.lm-blog-post-nav__item a {
  display: flex;
  align-items: center;
  min-height: 64px;
  padding: 18px 24px;
  border-radius: 999px;
  text-decoration: none;
  background: rgba(255,255,255,0.72);
  border: 1px solid rgba(78,15,88,0.12);
  color: var(--accent-dark);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-weight: 700;
}

.lm-blog-post-nav__item--center a {
  justify-content: center;
}

.lm-blog-post-nav__item--right a {
  justify-content: flex-end;
}

.lm-blog-grid--related {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1199px) {
  .lm-blog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lm-blog-card--featured {
    grid-template-columns: 1fr;
  }

  .lm-blog-card--featured .lm-blog-card__image {
    aspect-ratio: 1.2 / 1;
    min-height: unset;
  }

  .lm-blog-single-hero,
  .lm-blog-single-body {
    grid-template-columns: 1fr;
  }

  .lm-blog-single-hero__media {
    min-height: unset;
    order: -1;
  }

  .lm-blog-single-aside {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


@media (max-width: 767px) {
  .lm-blog-page,
  .lm-blog-single {
    padding: 14px 0 68px;
  }

  .lm-blog-hero {
    padding-top: 22px;
  }

  .lm-blog-hero__grid,
  .lm-blog-section-head,
  .lm-blog-grid,
  .lm-blog-grid--related,
  .lm-blog-post-nav,
  .lm-blog-single-aside {
    grid-template-columns: 1fr;
  }

  .lm-blog-hero__aside {
    justify-content: flex-start;
  }

  .lm-blog-hero__title,
  .lm-blog-single__title {
    max-width: none;
  }

  .lm-blog-hero__title {
    font-size: clamp(38px, 15vw, 62px);
  }

  .lm-blog-card__title {
    font-size: clamp(24px, 7.4vw, 32px);
    line-height: 1.04;
  }

  .lm-blog-single__title {
    font-size: clamp(32px, 11vw, 48px);
    line-height: 1.02;
  }

  .lm-blog-card__image,
  .lm-blog-grid .lm-blog-card__image,
  .lm-blog-card--featured .lm-blog-card__image {
    aspect-ratio: 5 / 4;
  }

  .lm-blog-card__body,
  .lm-blog-grid .lm-blog-card__body,
  .lm-blog-single-content {
    padding: 24px 20px 26px;
  }

  .lm-blog-single-hero__media {
    min-height: unset;
    border-radius: 26px;
  }

  .lm-blog-hero__description p {
    font-size: 15px;
    line-height: 1.75;
  }

  .lm-blog-single__lead {
    font-size: 17px;
    line-height: 1.75;
  }

  .lm-blog-single-content {
    font-size: 16px;
    line-height: 1.85;
  }

  .lm-blog-single-content blockquote {
    font-size: 24px;
    padding: 18px 20px;
  }

  .lm-blog-post-nav__item a,
  .lm-blog-post-nav__item--right a,
  .lm-blog-post-nav__item--center a {
    justify-content: center;
  }
}


/* ===== v302 fix homepage category columns vertical centering ===== */
.categories-grid {
  align-items: center !important;
}

.categories-left,
.categories-right {
  align-self: center !important;
}

.categories-left {
  display: flex !important;
  flex-direction: column;
  justify-content: center !important;
  height: 100%;
}

.categories-list {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100%;
}

.category-name {
  font-size: clamp(1.28rem, 2.35vw, 2.42rem);
}

.newsletter-grid {
  align-items: center !important;
}

.newsletter-copy,
.newsletter-image {
  align-self: center !important;
}

/* Archive filters */
.lm-archive-filters{
  margin: 0 0 36px;
  padding: 24px 28px;
  border: 1px solid rgba(30,26,32,.08);
  border-radius: 32px;
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(10px);
}
.lm-archive-filters__header{
  margin-bottom: 16px;
  font-size: 14px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #7e4695;
}
.lm-archive-filters__grid{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:12px;
}
.lm-filter-group{
  position:relative;
}
.lm-filter-group summary{
  list-style:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  padding:14px 20px;
  border:1px solid rgba(126,70,149,.32);
  border-radius:999px;
  background:#fff;
  font-weight:600;
  transition:.2s ease;
}
.lm-filter-group summary::-webkit-details-marker{display:none;}
.lm-filter-group summary::after{
  content:'+';
  color:#7e4695;
  font-size:18px;
  line-height:1;
}
.lm-filter-group:hover summary,
.lm-filter-group:focus-within summary,
.lm-filter-group[open] summary,
.lm-filter-group.is-active summary{
  border-color:#7e4695;
  box-shadow:0 12px 28px rgba(34,18,41,.08);
}
.lm-filter-group:hover summary::after,
.lm-filter-group:focus-within summary::after,
.lm-filter-group[open] summary::after{
  content:'–';
}
.lm-filter-group__count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:999px;
  background:#7e4695;
  color:#fff;
  font-size:12px;
}
.lm-filter-group__options{
  display:none;
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  z-index:20;
  min-width:260px;
  max-width:min(320px, 80vw);
  max-height:320px;
  overflow:auto;
  padding:16px 18px;
  border:1px solid rgba(30,26,32,.08);
  border-radius:22px;
  background:rgba(255,255,255,.98);
  box-shadow:0 20px 48px rgba(34,18,41,.14);
}
.lm-filter-group:hover .lm-filter-group__options,
.lm-filter-group:focus-within .lm-filter-group__options,
.lm-filter-group[open] .lm-filter-group__options{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.lm-filter-option{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:14px;
  line-height:1.35;
}
.lm-filter-option input{margin-top:3px;}
.lm-archive-filters__actions{
  display:flex;
  gap:12px;
  margin-top:18px;
}
.lm-filter-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 18px;
  border-radius:999px;
  text-decoration:none;
  border:1px solid #7e4695;
  transition:.2s ease;
}
.lm-filter-btn--apply{
  background:#7e4695;
  color:#fff;
}
.lm-filter-btn--reset{
  background:#fff;
  color:#7e4695;
}
@media (max-width: 767px){
  .lm-archive-filters{padding:18px; border-radius:22px;}
  .lm-archive-filters__grid{gap:10px;}
  .lm-filter-group{width:100%;}
  .lm-filter-group summary{width:100%; justify-content:space-between;}
  .lm-filter-group__options{position:static; min-width:0; max-width:none; margin-top:10px;}
  .lm-archive-filters__actions{flex-direction:column;}
}



/* Blog images 2:3 safeguard */
.lm-blog-grid .lm-blog-card__image img,
.lm-blog-single-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* ===== v301 topbar admin page + stable marquee ===== */
.lm-topbar__slides {
  animation-duration: var(--lm-topbar-speed, 28s) !important;
}


/* ===== v303 category rows glyph clipping + CTA button ===== */
.category-row {
  min-height: 118px;
  padding: 18px 0;
}

.category-name {
  line-height: 1.18;
  padding: .12em 0 .18em;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

.category-visual-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 132px;
  min-height: 56px;
  padding: 14px 30px;
  text-decoration: none;
  font-size: .95rem;
  line-height: 1;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.category-visual-badge:hover,
.category-visual-badge:focus-visible {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(78,15,88,0.10);
}

@media (max-width: 768px) {
  .category-row {
    min-height: 96px;
    padding: 14px 0;
  }

  .category-name {
    line-height: 1.16;
  }

  .category-visual-badge {
    min-width: 112px;
    min-height: 48px;
    padding: 12px 22px;
    font-size: .82rem;
  }
}


/* ===== v304 blog ratios: archive 6:3, single 5:3 ===== */
.blog .lm-blog-card__image,
.archive .lm-blog-card__image,
.home.blog .lm-blog-card__image,
.category .lm-blog-card__image,
.tag .lm-blog-card__image,
.author .lm-blog-card__image,
.date .lm-blog-card__image,
.search .lm-blog-card__image,
.blog .lm-blog-grid .lm-blog-card__image,
.archive .lm-blog-grid .lm-blog-card__image,
.home.blog .lm-blog-grid .lm-blog-card__image,
.category .lm-blog-grid .lm-blog-card__image,
.tag .lm-blog-grid .lm-blog-card__image,
.author .lm-blog-grid .lm-blog-card__image,
.date .lm-blog-grid .lm-blog-card__image,
.search .lm-blog-grid .lm-blog-card__image,
.blog .lm-blog-card--featured .lm-blog-card__image,
.archive .lm-blog-card--featured .lm-blog-card__image,
.home.blog .lm-blog-card--featured .lm-blog-card__image,
.category .lm-blog-card--featured .lm-blog-card__image,
.tag .lm-blog-card--featured .lm-blog-card__image,
.author .lm-blog-card--featured .lm-blog-card__image,
.date .lm-blog-card--featured .lm-blog-card__image,
.search .lm-blog-card--featured .lm-blog-card__image {
  aspect-ratio: 6 / 3 !important;
  min-height: unset !important;
}

.single-post .lm-blog-single-hero__media {
  aspect-ratio: 5 / 3 !important;
  min-height: unset !important;
}

.blog .lm-blog-card__image img,
.archive .lm-blog-card__image img,
.home.blog .lm-blog-card__image img,
.category .lm-blog-card__image img,
.tag .lm-blog-card__image img,
.author .lm-blog-card__image img,
.date .lm-blog-card__image img,
.search .lm-blog-card__image img,
.single-post .lm-blog-single-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ===== v305 blog image ratios hard override: archives 6:3, single 5:3 ===== */
.lm-blog-card__image,
.lm-blog-grid .lm-blog-card__image,
.lm-blog-card--featured .lm-blog-card__image {
  position: relative;
  overflow: hidden;
}

.blog .lm-blog-card__image,
.archive .lm-blog-card__image,
.home.blog .lm-blog-card__image,
.category .lm-blog-card__image,
.tag .lm-blog-card__image,
.author .lm-blog-card__image,
.date .lm-blog-card__image,
.search .lm-blog-card__image,
.blog .lm-blog-grid .lm-blog-card__image,
.archive .lm-blog-grid .lm-blog-card__image,
.home.blog .lm-blog-grid .lm-blog-card__image,
.category .lm-blog-grid .lm-blog-card__image,
.tag .lm-blog-grid .lm-blog-card__image,
.author .lm-blog-grid .lm-blog-card__image,
.date .lm-blog-grid .lm-blog-card__image,
.search .lm-blog-grid .lm-blog-card__image,
.blog .lm-blog-card--featured .lm-blog-card__image,
.archive .lm-blog-card--featured .lm-blog-card__image,
.home.blog .lm-blog-card--featured .lm-blog-card__image,
.category .lm-blog-card--featured .lm-blog-card__image,
.tag .lm-blog-card--featured .lm-blog-card__image,
.author .lm-blog-card--featured .lm-blog-card__image,
.date .lm-blog-card--featured .lm-blog-card__image,
.search .lm-blog-card--featured .lm-blog-card__image {
  aspect-ratio: 6 / 3 !important;
  min-height: 0 !important;
}

.single-post .lm-blog-single-hero__media {
  position: relative;
  overflow: hidden;
  aspect-ratio: 5 / 3 !important;
  min-height: 0 !important;
}

.lm-blog-card__image img,
.lm-blog-grid .lm-blog-card__image img,
.lm-blog-card--featured .lm-blog-card__image img,
.single-post .lm-blog-single-hero__media img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}


@media (max-width: 767px) {
  .blog .lm-blog-card__image,
  .archive .lm-blog-card__image,
  .home.blog .lm-blog-card__image,
  .category .lm-blog-card__image,
  .tag .lm-blog-card__image,
  .author .lm-blog-card__image,
  .date .lm-blog-card__image,
  .search .lm-blog-card__image,
  .blog .lm-blog-grid .lm-blog-card__image,
  .archive .lm-blog-grid .lm-blog-card__image,
  .home.blog .lm-blog-grid .lm-blog-card__image,
  .category .lm-blog-grid .lm-blog-card__image,
  .tag .lm-blog-grid .lm-blog-card__image,
  .author .lm-blog-grid .lm-blog-card__image,
  .date .lm-blog-grid .lm-blog-card__image,
  .search .lm-blog-grid .lm-blog-card__image,
  .blog .lm-blog-card--featured .lm-blog-card__image,
  .archive .lm-blog-card--featured .lm-blog-card__image,
  .home.blog .lm-blog-card--featured .lm-blog-card__image,
  .category .lm-blog-card--featured .lm-blog-card__image,
  .tag .lm-blog-card--featured .lm-blog-card__image,
  .author .lm-blog-card--featured .lm-blog-card__image,
  .date .lm-blog-card--featured .lm-blog-card__image,
  .search .lm-blog-card--featured .lm-blog-card__image {
    aspect-ratio: 6 / 3 !important;
  }

  .single-post .lm-blog-single-hero__media {
    aspect-ratio: 5 / 3 !important;
  }
}


/* ===== v306 topbar direction + blog ratios 3:1 ===== */
.lm-topbar__slides {
  width: max-content !important;
  animation-name: lmTopbarMarqueeLeft !important;
  animation-duration: var(--lm-topbar-speed, 28s) !important;
  animation-timing-function: linear !important;
  animation-iteration-count: infinite !important;
  animation-direction: normal !important;
  will-change: transform;
}

@keyframes lmTopbarMarqueeLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.lm-blog-card__image,
.lm-blog-grid .lm-blog-card__image,
.lm-blog-card--featured .lm-blog-card__image,
.single-post .lm-blog-single-hero__media {
  position: relative;
  overflow: hidden;
  min-height: 0 !important;
}

.blog .lm-blog-card__image,
.archive .lm-blog-card__image,
.home.blog .lm-blog-card__image,
.category .lm-blog-card__image,
.tag .lm-blog-card__image,
.author .lm-blog-card__image,
.date .lm-blog-card__image,
.search .lm-blog-card__image,
.blog .lm-blog-grid .lm-blog-card__image,
.archive .lm-blog-grid .lm-blog-card__image,
.home.blog .lm-blog-grid .lm-blog-card__image,
.category .lm-blog-grid .lm-blog-card__image,
.tag .lm-blog-grid .lm-blog-card__image,
.author .lm-blog-grid .lm-blog-card__image,
.date .lm-blog-grid .lm-blog-card__image,
.search .lm-blog-grid .lm-blog-card__image,
.blog .lm-blog-card--featured .lm-blog-card__image,
.archive .lm-blog-card--featured .lm-blog-card__image,
.home.blog .lm-blog-card--featured .lm-blog-card__image,
.category .lm-blog-card--featured .lm-blog-card__image,
.tag .lm-blog-card--featured .lm-blog-card__image,
.author .lm-blog-card--featured .lm-blog-card__image,
.date .lm-blog-card--featured .lm-blog-card__image,
.search .lm-blog-card--featured .lm-blog-card__image,
.single-post .lm-blog-single-hero__media {
  aspect-ratio: 3 / 1 !important;
}

.lm-blog-card__image img,
.lm-blog-grid .lm-blog-card__image img,
.lm-blog-card--featured .lm-blog-card__image img,
.single-post .lm-blog-single-hero__media img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}


@media (max-width: 767px) {
  .blog .lm-blog-card__image,
  .archive .lm-blog-card__image,
  .home.blog .lm-blog-card__image,
  .category .lm-blog-card__image,
  .tag .lm-blog-card__image,
  .author .lm-blog-card__image,
  .date .lm-blog-card__image,
  .search .lm-blog-card__image,
  .blog .lm-blog-grid .lm-blog-card__image,
  .archive .lm-blog-grid .lm-blog-card__image,
  .home.blog .lm-blog-grid .lm-blog-card__image,
  .category .lm-blog-grid .lm-blog-card__image,
  .tag .lm-blog-grid .lm-blog-card__image,
  .author .lm-blog-grid .lm-blog-card__image,
  .date .lm-blog-grid .lm-blog-card__image,
  .search .lm-blog-grid .lm-blog-card__image,
  .blog .lm-blog-card--featured .lm-blog-card__image,
  .archive .lm-blog-card--featured .lm-blog-card__image,
  .home.blog .lm-blog-card--featured .lm-blog-card__image,
  .category .lm-blog-card--featured .lm-blog-card__image,
  .tag .lm-blog-card--featured .lm-blog-card__image,
  .author .lm-blog-card--featured .lm-blog-card__image,
  .date .lm-blog-card--featured .lm-blog-card__image,
  .search .lm-blog-card--featured .lm-blog-card__image,
  .single-post .lm-blog-single-hero__media {
    aspect-ratio: 3 / 1 !important;
  }
}


/* ===== v13 related carousel sizing + matching ===== */
.best-name {
  font-size: clamp(1.35rem, 1.55vw, 2rem);
  line-height: 1.15;
}
.lm-related-scroller .best-name,
.lm-product-variants-grid .best-name,
.bestsellers-scroller .best-name {
  font-size: clamp(1rem, 1.15vw, 1.35rem);
  line-height: 1.22;
}
.lm-related-scroller .best-meta,
.lm-product-variants-grid .best-meta {
  margin-top: 0.85rem;
}


/* ===== v16 blog ratios 16:9 on archive and single ===== */
.lm-blog-card__image,
.lm-blog-grid .lm-blog-card__image,
.lm-blog-card--featured .lm-blog-card__image,
.single-post .lm-blog-single-hero__media {
  position: relative;
  overflow: hidden;
  min-height: 0 !important;
}

.blog .lm-blog-card__image,
.archive .lm-blog-card__image,
.home.blog .lm-blog-card__image,
.category .lm-blog-card__image,
.tag .lm-blog-card__image,
.author .lm-blog-card__image,
.date .lm-blog-card__image,
.search .lm-blog-card__image,
.blog .lm-blog-grid .lm-blog-card__image,
.archive .lm-blog-grid .lm-blog-card__image,
.home.blog .lm-blog-grid .lm-blog-card__image,
.category .lm-blog-grid .lm-blog-card__image,
.tag .lm-blog-grid .lm-blog-card__image,
.author .lm-blog-grid .lm-blog-card__image,
.date .lm-blog-grid .lm-blog-card__image,
.search .lm-blog-grid .lm-blog-card__image,
.blog .lm-blog-card--featured .lm-blog-card__image,
.archive .lm-blog-card--featured .lm-blog-card__image,
.home.blog .lm-blog-card--featured .lm-blog-card__image,
.category .lm-blog-card--featured .lm-blog-card__image,
.tag .lm-blog-card--featured .lm-blog-card__image,
.author .lm-blog-card--featured .lm-blog-card__image,
.date .lm-blog-card--featured .lm-blog-card__image,
.search .lm-blog-card--featured .lm-blog-card__image,
.single-post .lm-blog-single-hero__media {
  aspect-ratio: 16 / 9 !important;
}

.lm-blog-card__image img,
.lm-blog-grid .lm-blog-card__image img,
.lm-blog-card--featured .lm-blog-card__image img,
.single-post .lm-blog-single-hero__media img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}


@media (max-width: 767px) {
  .blog .lm-blog-card__image,
  .archive .lm-blog-card__image,
  .home.blog .lm-blog-card__image,
  .category .lm-blog-card__image,
  .tag .lm-blog-card__image,
  .author .lm-blog-card__image,
  .date .lm-blog-card__image,
  .search .lm-blog-card__image,
  .blog .lm-blog-grid .lm-blog-card__image,
  .archive .lm-blog-grid .lm-blog-card__image,
  .home.blog .lm-blog-grid .lm-blog-card__image,
  .category .lm-blog-grid .lm-blog-card__image,
  .tag .lm-blog-grid .lm-blog-card__image,
  .author .lm-blog-grid .lm-blog-card__image,
  .date .lm-blog-grid .lm-blog-card__image,
  .search .lm-blog-grid .lm-blog-card__image,
  .blog .lm-blog-card--featured .lm-blog-card__image,
  .archive .lm-blog-card--featured .lm-blog-card__image,
  .home.blog .lm-blog-card--featured .lm-blog-card__image,
  .category .lm-blog-card--featured .lm-blog-card__image,
  .tag .lm-blog-card--featured .lm-blog-card__image,
  .author .lm-blog-card--featured .lm-blog-card__image,
  .date .lm-blog-card--featured .lm-blog-card__image,
  .search .lm-blog-card--featured .lm-blog-card__image,
  .single-post .lm-blog-single-hero__media {
    aspect-ratio: 16 / 9 !important;
  }
}

/* ===== v17 blog related 16:9 + smaller archive/single headings ===== */
/* Blog card media ratio: archive, related posts and single hero */
.blog .lm-blog-card__image,
.archive .lm-blog-card__image,
.home.blog .lm-blog-card__image,
.category .lm-blog-card__image,
.tag .lm-blog-card__image,
.author .lm-blog-card__image,
.date .lm-blog-card__image,
.search .lm-blog-card__image,
.lm-blog-grid .lm-blog-card__image,
.lm-blog-grid--related .lm-blog-card__image,
.lm-blog-related .lm-blog-card__image,
.single-post .lm-blog-grid--related .lm-blog-card__image,
.single-post .lm-blog-related .lm-blog-card__image {
  aspect-ratio: 16 / 9 !important;
  min-height: unset !important;
}

.blog .lm-blog-card__image img,
.archive .lm-blog-card__image img,
.home.blog .lm-blog-card__image img,
.category .lm-blog-card__image img,
.tag .lm-blog-card__image img,
.author .lm-blog-card__image img,
.date .lm-blog-card__image img,
.search .lm-blog-card__image img,
.lm-blog-grid .lm-blog-card__image img,
.lm-blog-grid--related .lm-blog-card__image img,
.lm-blog-related .lm-blog-card__image img,
.single-post .lm-blog-grid--related .lm-blog-card__image img,
.single-post .lm-blog-related .lm-blog-card__image img,
.single-post .lm-blog-single-hero__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}

.single-post .lm-blog-single-hero__media {
  aspect-ratio: 16 / 9 !important;
  min-height: unset !important;
}

/* Smaller archive/single headings */
.lm-blog-hero__title {
  font-size: clamp(32px, 4.2vw, 56px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.03em !important;
  max-width: 16ch;
}

.lm-blog-section-head h2 {
  font-size: clamp(28px, 3.4vw, 44px) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.025em !important;
}

.lm-blog-single__title {
  font-size: clamp(30px, 4vw, 52px) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.03em !important;
  max-width: 16ch;
}

/* Post content headings styled lighter, closer to category description copy */
.lm-blog-single-content h2,
.lm-blog-single-content h3 {
  font-family: var(--font-serif);
  font-weight: 300;
  color: rgba(17,17,17,0.88);
  letter-spacing: -0.02em;
  line-height: 1.12;
}

.lm-blog-single-content h2 {
  font-size: clamp(24px, 2.8vw, 34px) !important;
  margin: 1.5em 0 0.6em;
}

.lm-blog-single-content h3 {
  font-size: clamp(20px, 2.2vw, 28px) !important;
  margin: 1.35em 0 0.55em;
}

@media (max-width: 980px) {
  .lm-blog-hero__title {
    font-size: clamp(28px, 8vw, 42px) !important;
  }

  .lm-blog-single__title {
    font-size: clamp(28px, 7vw, 40px) !important;
  }

  .lm-blog-section-head h2 {
    font-size: clamp(26px, 6vw, 34px) !important;
  }
}


/* SKYADS fix */
.wc-block-components-product-title a,
a[data-wp-on--click*="viewProduct"] {
    font-size: 12px !important;
}

.wc-block-components-product-button__button,
.wp-block-button .wc-block-components-product-button__button,
.wc-block-components-product-button .wc-block-components-product-button__button {
    background: linear-gradient(135deg, #712289 0%, #7f35a0 52%, #7a31a0 100%) !important;
    color: #fff !important;
    box-shadow: 0 14px 34px rgba(113,34,137,0.14), inset 0 1px 0 rgba(255,255,255,0.18) !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    line-height: 1 !important;
    padding: 10px 20px !important;
    border-radius: 999px !important;
}


.wc-block-components-product-button__button:hover,
.wc-block-components-product-button__button:focus,
.wp-block-button .wc-block-components-product-button__button:hover,
.wp-block-button .wc-block-components-product-button__button:focus,
.wc-block-components-product-button .wc-block-components-product-button__button:hover,
.wc-block-components-product-button .wc-block-components-product-button__button:focus {
    color: #fff !important;
    background: linear-gradient(135deg, #6d2084 0%, #7a2f99 52%, #752a95 100%) !important;
    box-shadow: 0 16px 36px rgba(113,34,137,0.16), inset 0 1px 0 rgba(255,255,255,0.16) !important;
}



/* Footer currency switcher */
.lm-footer-tagline {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 14px;
  color: var(--accent-dark);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.lm-footer-tagline__line {
  width: 28px;
  height: 1px;
  background: currentColor;
  display: inline-block;
  flex: 0 0 28px;
}

.lm-footer-tagline__text {
  line-height: 1.2;
}

.lm-footer-currency-switcher {
  margin-top: 26px;
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.lm-footer-currency-switcher h4 {
  margin: 0;
  flex: 0 0 auto;
}

.lm-footer-currency-switcher__control {
  flex: 0 0 auto;
}

.lm-footer-currency-switcher__control select,
.lm-footer-currency-switcher__control .currency-switcher,
.lm-footer-currency-switcher__control .woocs_switcher,
.lm-footer-currency-switcher__control form,
.lm-footer-currency-switcher__control .wmc-currency-wrapper {
  width: auto;
  max-width: 180px;
}

.lm-footer-currency-switcher__control select {
  min-height: 44px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(79, 42, 108, 0.22);
  background: #fff;
  color: #4f2a6c;
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@media (max-width: 575px) {
  .lm-footer-currency-switcher {
    align-items: flex-start;
    gap: 10px;
  }
}

/* ===== SKYADS v17 menu cleanup ===== */
@media (min-width: 981px) {
  .lm-main-nav,
  .lm-main-nav .menu-primary-container,
  .lm-nav-panel {
    overflow: visible !important;
  }

  .lm-menu {
    gap: 10px !important;
    align-items: center !important;
  }

  .lm-menu > li {
    position: relative !important;
  }

  .lm-menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: none !important;
    min-height: 42px !important;
    padding: 8px 8px !important;
    border-radius: 12px !important;
    white-space: nowrap !important;
    text-align: center !important;
    line-height: 1.15 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.03em !important;
    overflow: visible !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
  }

  .lm-menu > li.menu-item-has-children > a {
    gap: 14px;
    padding-right: 8px !important;
  }

  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a,
  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a {
    background: transparent !important;
    color: var(--accent-dark) !important;
    box-shadow: none !important;
  }

  .lm-menu .sub-menu {
    top: calc(100% + 12px) !important;
    left: 0 !important;
    min-width: 210px !important;
    max-width: 260px !important;
    margin: 0 !important;
    padding: 12px 0 !important;
    border-radius: 28px !important;
    background: rgba(251, 249, 252, 0.98) !important;
    border: 1px solid rgba(113, 34, 137, 0.10) !important;
    box-shadow: 0 18px 36px rgba(64, 22, 84, 0.08) !important;
  }

  .lm-menu .sub-menu > li {
    margin: 0 !important;
    width: 100% !important;
  }

  .lm-menu .sub-menu a {
    display: block !important;
    min-height: 0 !important;
    padding: 12px 22px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.01em !important;
    color: var(--accent-dark) !important;
    background: transparent !important;
  }

  .lm-menu .sub-menu > li:hover > a,
  .lm-menu .sub-menu > li:focus-within > a {
    background: rgba(113, 34, 137, 0.05) !important;
    color: var(--accent-dark) !important;
  }

  .lm-menu .sub-menu > li.current-menu-item > a,
  .lm-menu .sub-menu > li.current-menu-ancestor > a {
    background: transparent !important;
    color: var(--accent-dark) !important;
    font-weight: 700 !important;
    box-shadow: none !important;
  }

  .lm-menu .sub-menu > li.current-menu-item > a::after,
  .lm-menu .sub-menu > li.current-menu-ancestor > a::after {
    content: none !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 40px !important;
  }

  .lm-menu .sub-menu .sub-menu {
    top: -12px !important;
    left: calc(100% + 10px) !important;
  }
}


/* Remove underline on hover */
.menu a:hover, nav a:hover, .main-menu a:hover {
    text-decoration: none !important;
    border-bottom: none !important;
}

/* ===== menu: remove underline/line effect on hover/current ===== */
.lm-menu a,
.lm-menu a:hover,
.lm-menu a:focus,
.lm-menu a:active,
.lm-menu .current-menu-item > a,
.lm-menu .current-menu-ancestor > a,
.lm-site-header nav a,
.lm-site-header nav a:hover,
.lm-site-header nav a:focus,
.lm-site-header nav a:active {
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.lm-menu a::before,
.lm-menu a::after,
.lm-menu a:hover::before,
.lm-menu a:hover::after,
.lm-menu a:focus::before,
.lm-menu a:focus::after,
.lm-menu a:active::before,
.lm-menu a:active::after,
.lm-menu .current-menu-item > a::before,
.lm-menu .current-menu-item > a::after,
.lm-menu .current-menu-ancestor > a::before,
.lm-menu .current-menu-ancestor > a::after,
.lm-site-header nav a::before,
.lm-site-header nav a:hover::before,
.lm-site-header nav a:focus::before,
.lm-site-header nav a:active::before {
  width: 0 !important;
  opacity: 0 !important;
  content: none !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.lm-menu > li.menu-item-has-children > a::after,
.lm-menu .sub-menu > li.menu-item-has-children > a::after {
  content: "" !important;
  opacity: .9 !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 1.5px solid currentColor !important;
  border-bottom: 1.5px solid currentColor !important;
  background: transparent !important;
}

/* ===== v21 mobile menu full-width active state + arrows ===== */
@media (max-width: 980px) {
  .lm-menu > li,
  .lm-menu .sub-menu li {
    position: relative !important;
  }

  .lm-menu > li > a,
  .lm-menu .sub-menu a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: none !important;
    padding: 16px 14px !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
  }

  .lm-menu > li.menu-item-has-children > a,
  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 44px !important;
  }

  .lm-menu .sub-menu {
    padding: 0 0 12px 0 !important;
  }

  .lm-menu .sub-menu li {
    grid-template-columns: 1fr !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    border-right: 1.6px solid currentColor !important;
    border-bottom: 1.6px solid currentColor !important;
    border-top: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) rotate(-45deg) !important;
    opacity: 0.95 !important;
    pointer-events: none !important;
  }

  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a,
  .lm-menu .sub-menu > li.current-menu-item > a,
  .lm-menu .sub-menu > li.current-menu-ancestor > a,
  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a,
  .lm-menu .sub-menu > li:hover > a,
  .lm-menu .sub-menu > li:focus-within > a {
    width: 100% !important;
    background: rgba(113,34,137,0.08) !important;
    color: var(--accent-dark) !important;
    box-shadow: inset 0 0 0 1px rgba(113,34,137,0.10) !important;
  }

  .lm-menu li.is-submenu-open > .lm-submenu-toggle {
    background: rgba(113,34,137,0.08) !important;
    box-shadow: inset 0 0 0 1px rgba(113,34,137,0.10) !important;
  }
}

/* ===== v22 dropdown full-width hover highlight ===== */
@media (min-width: 981px) {
  .lm-menu .sub-menu {
    padding: 12px !important;
  }

  .lm-menu .sub-menu > li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .lm-menu .sub-menu a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 14px 22px !important;
    border-radius: 20px !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 46px !important;
  }

  .lm-menu .sub-menu > li:hover > a,
  .lm-menu .sub-menu > li:focus-within > a,
  .lm-menu .sub-menu > li.current-menu-item > a,
  .lm-menu .sub-menu > li.current-menu-ancestor > a {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    background: rgba(113,34,137,0.08) !important;
    color: var(--accent-dark) !important;
    box-shadow: none !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    right: 20px !important;
  }
}


/* ===== v7 menu fixes ===== */

/* remove desktop underline effects */
.lm-menu a::after,
.lm-shop-actions a::after,
.lm-site-header nav a::after,
.lm-shop-actions a::after{
  display:none !important;
  content:none !important;
}

/* desktop dropdown arrows */
.lm-menu > li.menu-item-has-children{
  position:relative;
}

.lm-menu > li.menu-item-has-children > a{
  padding-right:22px;
}

.lm-menu > li.menu-item-has-children > a::before{
  content:"";
  position:absolute;
  right:0;
  top:50%;
  width:8px;
  height:8px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:translateY(-70%) rotate(45deg);
  opacity:.9;
}

/* cleaner submenu */
.lm-menu .sub-menu{
  border-radius:28px;
  overflow:hidden;
}

.lm-menu .sub-menu li{
  border-bottom:1px solid rgba(17,17,17,0.05);
}

.lm-menu .sub-menu li:last-child{
  border-bottom:0;
}

/* mobile menu */
@media (max-width:980px){

  .lm-nav-panel{
    padding-top:14px;
  }

  .lm-menu li{
    border-bottom:0 !important;
    margin-bottom:10px;
    border-radius:28px;
    overflow:hidden;
    background:rgba(255,255,255,0.72);
    border:1px solid rgba(113,34,137,0.10);
  }

  .lm-menu > li > a{
    min-height:72px;
    display:flex;
    align-items:center;
    padding:0 24px;
    font-size:1rem;
    font-weight:700;
    letter-spacing:.04em;
  }

  .lm-menu .sub-menu{
    margin:0;
    padding:0 0 10px;
    background:transparent;
  }

  .lm-menu .sub-menu li{
    background:transparent;
    border:0 !important;
    margin:0;
    border-radius:0;
  }

  .lm-menu .sub-menu a{
    padding:20px 24px;
    font-size:.98rem;
    font-weight:700;
  }

  .lm-submenu-toggle{
    background:transparent;
    border:0;
    width:54px;
    height:54px;
    margin-top:-64px;
    margin-right:12px;
  }

  .lm-submenu-toggle span[aria-hidden="true"]{
    display:block;
    width:10px;
    height:10px;
    border-right:3px solid var(--accent);
    border-bottom:3px solid var(--accent);
    transform:rotate(45deg);
    transition:transform .25s ease;
    font-size:0;
    color:transparent;
  }

  .lm-menu li.is-submenu-open > .lm-submenu-toggle span[aria-hidden="true"]{
    transform:rotate(225deg);
    margin-top:8px;
  }
}


/* ===== v25 final mobile search + no underlines + desktop chevrons ===== */
@media (max-width: 980px) {
  .lm-header-actions .lm-search-toggle {
    display: none !important;
  }

  .lm-nav-panel {
    display: none;
    flex-direction: column;
  }

  .lm-site-header.is-menu-open .lm-nav-panel {
    display: flex !important;
  }

  .lm-mobile-search {
    display: block !important;
    width: 100% !important;
    padding: 0 0 16px !important;
    margin: 0 0 12px !important;
    order: -1 !important;
  }

  .lm-mobile-search form {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    gap: 0 !important;
    margin: 0 !important;
    position: relative !important;
  }

  .lm-mobile-search label {
    display: block !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .lm-mobile-search input[type="search"],
  .lm-mobile-search .search-field {
    width: 100% !important;
    min-width: 0 !important;
    height: 58px !important;
    padding: 0 58px 0 18px !important;
    border: 1px solid rgba(113,34,137,0.14) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: var(--accent-dark) !important;
    box-shadow: none !important;
    outline: none !important;
  }

  .lm-mobile-search button[type="submit"],
  .lm-mobile-search .search-submit {
    position: absolute !important;
    top: 50% !important;
    right: 8px !important;
    transform: translateY(-50%) !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: var(--accent) !important;
    box-shadow: none !important;
    font-size: 0 !important;
    overflow: hidden !important;
  }

  .lm-mobile-search button[type="submit"]::before,
  .lm-mobile-search .search-submit::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    margin: auto !important;
    width: 18px !important;
    height: 18px !important;
    border: 2px solid currentColor !important;
    border-radius: 50% !important;
    transform: translate(-2px,-2px) !important;
  }

  .lm-mobile-search button[type="submit"]::after,
  .lm-mobile-search .search-submit::after {
    content: "" !important;
    position: absolute !important;
    width: 8px !important;
    height: 2px !important;
    background: currentColor !important;
    right: 9px !important;
    bottom: 11px !important;
    transform: rotate(45deg) !important;
    transform-origin: center !important;
    border-radius: 2px !important;
  }

  .lm-menu > li > a::before,
  .lm-menu .sub-menu a::before,
  .lm-menu > li > a::after,
  .lm-menu .sub-menu a::after {
    box-shadow: none !important;
  }

  .lm-menu > li > a::before,
  .lm-menu .sub-menu a::before {
    content: none !important;
    display: none !important;
  }
}

@media (min-width: 981px) {
  .lm-mobile-search {
    display: none !important;
  }

  .lm-menu > li.menu-item-has-children > a,
  .lm-menu .sub-menu > li.menu-item-has-children > a {
    position: relative !important;
  }

  .lm-menu > li.menu-item-has-children > a::before,
  .lm-menu .sub-menu > li.menu-item-has-children > a::before {
    content: none !important;
    display: none !important;
  }

  .lm-menu > li > a::before {
    content: none !important;
    display: none !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    display: inline-block !important;
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    margin-top: -6px !important;
    border-right: 1.5px solid currentColor !important;
    border-bottom: 1.5px solid currentColor !important;
    transform: rotate(45deg) !important;
    background: transparent !important;
    opacity: 1 !important;
  }

  .lm-menu .sub-menu > li.menu-item-has-children > a::after {
    content: "" !important;
    display: inline-block !important;
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    margin-top: -5px !important;
    border-right: 1.5px solid currentColor !important;
    border-top: 1.5px solid currentColor !important;
    border-bottom: 0 !important;
    transform: rotate(45deg) !important;
    background: transparent !important;
    opacity: 1 !important;
  }
}

/* ===== Category description mandala overlay - fixed 2026-05-03 ===== */
.lm-archive-description-full {
  position: relative;
  isolation: isolate;
  overflow: visible;
}

.lm-archive-description-full::before {
  content: "";
  position: sticky;
  top: 0;
  display: block;
  width: 100vw;
  height: 100vh;
  min-height: 100svh;
  margin-left: calc(50% - 50vw);
  margin-bottom: -100vh;
  z-index: -1;
  pointer-events: none;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png');
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto 100vh;
  opacity: .34;
}

.lm-archive-description-full .lm-section-heading,
.lm-archive-description-full .lm-description-content {
  position: relative;
  z-index: 1;
}

@media (max-width: 1024px) {
  .lm-archive-description-full::before {
    width: 100vw;
    height: 100svh;
    min-height: 100svh;
    margin-left: calc(50% - 50vw);
    margin-bottom: -100svh;
    background-size: auto 100svh;
    background-position: right center;
    opacity: .30;
  }
}

@media (max-width: 768px) {
  .lm-archive-description-full {
    overflow: visible;
  }

  .lm-archive-description-full::before {
    top: 0;
    width: 100vw;
    height: 100svh;
    min-height: 100svh;
    margin-left: calc(50% - 50vw);
    margin-bottom: -100svh;
    background-size: auto 100svh;
    background-position: right center;
    opacity: .28;
  }
}

@media (max-width: 480px) {
  .lm-archive-description-full::before {
    background-size: auto 100svh;
    background-position: right center;
    opacity: .26;
  }
}

/* ===== Category archive/products mandala overlay - adjusted 2026-05-03 ===== */
.tax-product_cat .lm-category-products-mandala-zone {
  position: relative;
  isolation: isolate;
  overflow: visible;
}

.tax-product_cat .lm-category-products-mandala-zone::before {
  content: "";
  position: sticky;
  top: 0;
  display: block;
  width: 100vw;
  height: 100vh;
  min-height: 100svh;
  margin-left: calc(50% - 50vw);
  margin-bottom: -100vh;
  z-index: -1;
  pointer-events: none;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/Projekt-bez-nazwy-13.png');
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 100vh;
  opacity: .30;
}

.tax-product_cat .lm-category-products-mandala-zone > * {
  position: relative;
  z-index: 1;
}

.tax-product_cat .lm-archive-description-full::before {
  content: none !important;
}

@media (max-width: 1024px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    height: 100svh;
    min-height: 100svh;
    margin-bottom: -100svh;
    background-size: auto 100svh;
    background-position: left center;
    opacity: .28;
  }
}

@media (max-width: 768px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    top: 0;
    height: 100svh;
    min-height: 100svh;
    margin-bottom: -100svh;
    background-size: auto 100svh;
    background-position: left center;
    opacity: .24;
  }
}

@media (max-width: 480px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    background-size: auto 100svh;
    background-position: left center;
    opacity: .22;
  }
}

/* ===== v3 category mandalas: left stops before description, right stays in description ===== */
.tax-product_cat .lm-category-products-mandala-zone {
  overflow: hidden !important;
}

.tax-product_cat .lm-archive-description-full {
  position: relative;
  isolation: isolate;
  overflow: visible !important;
}

.tax-product_cat .lm-archive-description-full::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: auto 100vh !important;
  opacity: .34 !important;
}

@media (max-width: 1024px) {
  .tax-product_cat .lm-archive-description-full::before {
    height: 100svh !important;
    min-height: 100svh !important;
    margin-bottom: -100svh !important;
    background-size: auto 100svh !important;
    background-position: right center !important;
    opacity: .30 !important;
  }
}

@media (max-width: 768px) {
  .tax-product_cat .lm-archive-description-full::before {
    top: 0 !important;
    height: 100svh !important;
    min-height: 100svh !important;
    margin-bottom: -100svh !important;
    background-size: auto 100svh !important;
    background-position: right center !important;
    opacity: .28 !important;
  }
}

@media (max-width: 480px) {
  .tax-product_cat .lm-archive-description-full::before {
    background-size: auto 100svh !important;
    background-position: right center !important;
    opacity: .26 !important;
  }
}

/* ===== v4 category products mandala: visible full width, clipped only by section height ===== */
.tax-product_cat .lm-category-products-mandala-zone {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
}

.tax-product_cat .lm-category-products-mandala-zone::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 50% !important;
  right: auto !important;
  display: block !important;
  width: 100vw !important;
  height: auto !important;
  min-height: 0 !important;
  margin-left: -50vw !important;
  margin-bottom: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/Projekt-bez-nazwy-13.png') !important;
  background-repeat: no-repeat !important;
  background-position: left top !important;
  background-size: auto 100vh !important;
  opacity: .30 !important;
}

@media (max-width: 1024px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    background-size: auto 100svh !important;
    background-position: left top !important;
    opacity: .28 !important;
  }
}

@media (max-width: 768px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    background-size: auto 100svh !important;
    background-position: left top !important;
    opacity: .24 !important;
  }
}

@media (max-width: 480px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    background-size: auto 100svh !important;
    background-position: left top !important;
    opacity: .22 !important;
  }
}

/* ===== v5 category products mandala: sticky during product section ===== */
.tax-product_cat .lm-category-products-mandala-zone {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
}

.tax-product_cat .lm-category-products-mandala-zone::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/Projekt-bez-nazwy-13.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .30 !important;
}

@media (max-width: 1024px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    height: 100svh !important;
    min-height: 100svh !important;
    margin-bottom: -100svh !important;
    background-size: auto 100svh !important;
    background-position: left center !important;
    opacity: .28 !important;
  }
}

@media (max-width: 768px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    top: 0 !important;
    background-size: auto 100svh !important;
    background-position: left center !important;
    opacity: .24 !important;
  }
}

@media (max-width: 480px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    background-size: auto 100svh !important;
    background-position: left center !important;
    opacity: .22 !important;
  }
}

/* ===== v6 category mandalas: product mandala stops before category description ===== */
.tax-product_cat .lm-category-products-mandala-zone {
  z-index: 1 !important;
}

.tax-product_cat .lm-archive-description-full {
  position: relative !important;
  isolation: isolate !important;
  z-index: 3 !important;
  /* Odtwarza tło strony i przykrywa mandalę z sekcji produktów, gdy zaczyna się opis. */
  background:
    radial-gradient(circle at 68% 28%, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.56) 18%, rgba(255,255,255,0) 40%),
    radial-gradient(circle at 35% 38%, rgba(113,34,137,0.035) 0%, rgba(113,34,137,0.015) 24%, rgba(113,34,137,0) 50%),
    radial-gradient(circle at 14% 84%, rgba(255,255,255,0.86) 0%, rgba(255,255,255,0.22) 16%, rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #fcfbfd 0%, #faf8fc 18%, #f9f6fb 38%, #ffffff 56%, #f8f4fa 76%, #fbf9fc 100%) !important;
}

.tax-product_cat .lm-archive-description-full::before {
  z-index: 0 !important;
}

.tax-product_cat .lm-archive-description-full .lm-section-heading,
.tax-product_cat .lm-archive-description-full .lm-description-content {
  position: relative !important;
  z-index: 1 !important;
}

/* ===== v7 category mandalas: when category description starts, hide products mandala completely ===== */
.tax-product_cat .lm-archive-description-full {
  position: relative !important;
  isolation: isolate !important;
  z-index: 20 !important;
  overflow: visible !important;
}

.tax-product_cat .lm-archive-description-full::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 50% !important;
  width: 100vw !important;
  margin-left: -50vw !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 68% 28%, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.56) 18%, rgba(255,255,255,0) 40%),
    radial-gradient(circle at 35% 38%, rgba(113,34,137,0.035) 0%, rgba(113,34,137,0.015) 24%, rgba(113,34,137,0) 50%),
    radial-gradient(circle at 14% 84%, rgba(255,255,255,0.86) 0%, rgba(255,255,255,0.22) 16%, rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #fcfbfd 0%, #faf8fc 18%, #f9f6fb 38%, #ffffff 56%, #f8f4fa 76%, #fbf9fc 100%) !important;
}

.tax-product_cat .lm-archive-description-full::before {
  z-index: 1 !important;
}

.tax-product_cat .lm-archive-description-full .lm-section-heading,
.tax-product_cat .lm-archive-description-full .lm-description-content {
  position: relative !important;
  z-index: 2 !important;
}


/* ===== Product description mandala overlay - synced with category description ===== */
.single-product .lm-product-description-full {
  position: relative;
  isolation: isolate;
  overflow: visible;
}

.single-product .lm-product-description-full::before {
  content: "";
  position: sticky;
  top: 0;
  display: block;
  width: 100vw;
  height: 100vh;
  min-height: 100svh;
  margin-left: calc(50% - 50vw);
  margin-bottom: -100vh;
  z-index: -1;
  pointer-events: none;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png');
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto 100vh;
  opacity: .34;
}

.single-product .lm-product-description-full .lm-section-heading,
.single-product .lm-product-description-full .lm-description-content {
  position: relative;
  z-index: 1;
}

@media (max-width: 1024px) {
  .single-product .lm-product-description-full::before {
    width: 100vw;
    height: 100svh;
    min-height: 100svh;
    margin-left: calc(50% - 50vw);
    margin-bottom: -100svh;
    background-size: auto 100svh;
    background-position: right center;
    opacity: .30;
  }
}

@media (max-width: 768px) {
  .single-product .lm-product-description-full {
    overflow: visible;
  }

  .single-product .lm-product-description-full::before {
    top: 0;
    width: 100vw;
    height: 100svh;
    min-height: 100svh;
    margin-left: calc(50% - 50vw);
    margin-bottom: -100svh;
    background-size: auto 100svh;
    background-position: right center;
    opacity: .28;
  }
}

@media (max-width: 480px) {
  .single-product .lm-product-description-full::before {
    background-size: auto 100svh;
    background-position: right center;
    opacity: .26;
  }
}

/* ===== v8 category mandalas: mask product mandala below category description ===== */
.tax-product_cat .lm-archive-shell {
  position: relative !important;
  isolation: isolate !important;
}

.tax-product_cat .lm-category-products-mandala-zone {
  position: relative !important;
  z-index: 1 !important;
  overflow: hidden !important;
  clip-path: inset(0 0 0 0) !important;
}

.tax-product_cat .lm-archive-description-full {
  position: relative !important;
  z-index: 30 !important;
  isolation: isolate !important;
  overflow: visible !important;
}

.tax-product_cat .lm-archive-description-full::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: -140vh !important;
  left: 50% !important;
  width: 100vw !important;
  margin-left: -50vw !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 68% 28%, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.56) 18%, rgba(255,255,255,0) 40%),
    radial-gradient(circle at 35% 38%, rgba(113,34,137,0.035) 0%, rgba(113,34,137,0.015) 24%, rgba(113,34,137,0) 50%),
    radial-gradient(circle at 14% 84%, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.32) 16%, rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #fcfbfd 0%, #faf8fc 18%, #f9f6fb 38%, #ffffff 56%, #f8f4fa 76%, #fbf9fc 100%) !important;
}

.tax-product_cat .lm-archive-description-full::before {
  z-index: 1 !important;
}

.tax-product_cat .lm-archive-description-full .lm-section-heading,
.tax-product_cat .lm-archive-description-full .lm-description-content {
  position: relative !important;
  z-index: 2 !important;
}

/* ===== v10 product mandala starts from top of product page ===== */
.single-product .lm-product-description-full::before {
  display: none !important;
}

.single-product .lm-product-page {
  position: relative;
  isolation: isolate;
}

.single-product .lm-product-page::before {
  content: "";
  position: sticky;
  top: 0;
  display: block;
  width: 100vw;
  height: 100vh;
  min-height: 100svh;
  margin-left: calc(50% - 50vw);
  margin-bottom: -100vh;
  pointer-events: none;
  z-index: -1;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png');
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto 100vh;
  opacity: .34;
}

@media (max-width: 1024px) {
  .single-product .lm-product-page::before {
    background-size: auto 90vh;
    opacity: .30;
  }
}

@media (max-width: 768px) {
  .single-product .lm-product-page::before {
    background-size: auto 75vh;
    opacity: .26;
  }
}

/* ===== v11 category products mandala: full on products, hidden from category description down ===== */
.tax-product_cat .lm-category-products-mandala-zone {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
  clip-path: none !important;
  z-index: 1 !important;
}

.tax-product_cat .lm-category-products-mandala-zone::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/Projekt-bez-nazwy-13.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .30 !important;
}

.tax-product_cat .lm-archive-description-full {
  position: relative !important;
  z-index: 50 !important;
  isolation: isolate !important;
  overflow: visible !important;
  background:
    radial-gradient(circle at 68% 28%, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.56) 18%, rgba(255,255,255,0) 40%),
    radial-gradient(circle at 35% 38%, rgba(113,34,137,0.035) 0%, rgba(113,34,137,0.015) 24%, rgba(113,34,137,0) 50%),
    radial-gradient(circle at 14% 84%, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.32) 16%, rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #fcfbfd 0%, #faf8fc 18%, #f9f6fb 38%, #ffffff 56%, #f8f4fa 76%, #fbf9fc 100%) !important;
}

.tax-product_cat .lm-archive-description-full::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: -160vh !important;
  left: 50% !important;
  width: 100vw !important;
  margin-left: -50vw !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 68% 28%, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.56) 18%, rgba(255,255,255,0) 40%),
    radial-gradient(circle at 35% 38%, rgba(113,34,137,0.035) 0%, rgba(113,34,137,0.015) 24%, rgba(113,34,137,0) 50%),
    radial-gradient(circle at 14% 84%, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.32) 16%, rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #fcfbfd 0%, #faf8fc 18%, #f9f6fb 38%, #ffffff 56%, #f8f4fa 76%, #fbf9fc 100%) !important;
}

.tax-product_cat .lm-archive-description-full::before {
  z-index: 0 !important;
}

.tax-product_cat .lm-archive-description-full .lm-section-heading,
.tax-product_cat .lm-archive-description-full .lm-description-content {
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 1024px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    height: 100svh !important;
    min-height: 100svh !important;
    margin-bottom: -100svh !important;
    background-size: auto 100svh !important;
    opacity: .28 !important;
  }
}

@media (max-width: 768px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    background-size: auto 100svh !important;
    opacity: .24 !important;
  }
}

/* ===== v13 category: hide product mandala only through description, keep TrustMate visible below ===== */
.tax-product_cat .lm-archive-description-full::after {
  bottom: 0 !important;
}

.tax-product_cat #tm-widget-chupacabra2,
.tax-product_cat .tm-chupacabra2,
.tax-product_cat .tm-chupacabra2__r1,
.tax-product_cat .tm-hydra,
.tax-product_cat .tm-hydra__module {
  position: relative !important;
  z-index: 90 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.tax-product_cat #tm-widget-chupacabra2 {
  isolation: isolate !important;
}

/* ===== v16 archive loading + product hover image ===== */
.lm-archive-thumb {
  position: relative;
  display: block;
  overflow: hidden;
}
.lm-archive-thumb-stack {
  position: relative;
  display: block;
  width: 100%;
}
.lm-archive-thumb-img {
  display: block;
  width: 100%;
  height: auto;
  transition: opacity .28s ease, transform .32s ease;
  will-change: opacity, transform;
}
.lm-archive-thumb-img--hover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
}
.lm-product-card:hover .lm-archive-thumb-img--primary,
.lm-product-card:focus-within .lm-archive-thumb-img--primary {
  opacity: 0;
}
.lm-product-card:hover .lm-archive-thumb-img--hover,
.lm-product-card:focus-within .lm-archive-thumb-img--hover {
  opacity: 1;
  transform: scale(1.015);
}
.lm-card-enter {
  opacity: 0;
  transform: translateY(12px);
}
.lm-card-enter.is-visible {
  opacity: 1;
  transform: translateY(0);
  transition: opacity .28s ease, transform .28s ease;
}
.lm-archive-pagination-noscript {
  margin-top: 34px;
}
@media (hover: none) {
  .lm-archive-thumb-img--hover { display: none; }
  .lm-product-card:hover .lm-archive-thumb-img--primary { opacity: 1; }
}


/* ===== v17 desktop menu click dropdown + arrow spacing ===== */
@media (min-width: 981px) {
  .lm-menu {
    gap: clamp(20px, 2.1vw, 38px);
  }

  .lm-menu > li.menu-item-has-children > a {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding-right: 26px;
  }

  .lm-menu > li.menu-item-has-children > a::before {
    right: 4px;
    width: 9px;
    height: 9px;
    transform: translateY(-72%) rotate(45deg);
    transition: transform .22s ease;
  }

  .lm-menu > li.menu-item-has-children.is-submenu-open > a::before {
    transform: translateY(-35%) rotate(225deg);
  }

  .lm-menu li:hover > .sub-menu,
  .lm-menu li:focus-within > .sub-menu {
    display: none;
  }

  .lm-menu li.is-submenu-open > .sub-menu {
    display: block;
  }
}


/* Increased spacing between menu text and dropdown arrow */
.lm-main-nav .menu-item-has-children > a,
.lm-main-nav .menu-item-has-children > button,
.lm-main-nav .menu-item-has-children .sub-menu-toggle {
  gap: 14px;
}


/* ===== Mandala background on account, wishlist, cart and checkout pages ===== */
.woocommerce-account .site-main,
.woocommerce-account main,
.woocommerce-cart .site-main,
.woocommerce-cart main,
.woocommerce-checkout .site-main,
.woocommerce-checkout main,
body[class*="wishlist"] .site-main,
body[class*="wishlist"] main,
body.page-lista-zyczen .site-main,
body.page-lista-zyczen main,
body.page-wishlist .site-main,
body.page-wishlist main {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.woocommerce-account .site-main::before,
.woocommerce-account main::before,
.woocommerce-cart .site-main::before,
.woocommerce-cart main::before,
.woocommerce-checkout .site-main::before,
.woocommerce-checkout main::before,
body[class*="wishlist"] .site-main::before,
body[class*="wishlist"] main::before,
body.page-lista-zyczen .site-main::before,
body.page-lista-zyczen main::before,
body.page-wishlist .site-main::before,
body.page-wishlist main::before {
  content: "";
  position: sticky;
  top: 0;
  display: block;
  width: 100vw;
  height: 100vh;
  min-height: 100svh;
  margin-left: calc(50% - 50vw);
  margin-bottom: -100vh;
  z-index: -1;
  pointer-events: none;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png');
  background-repeat: no-repeat;
  background-position: right top;
  background-size: auto 100vh;
  opacity: .30;
}

@media (max-width: 768px) {
  .woocommerce-account .site-main::before,
  .woocommerce-account main::before,
  .woocommerce-cart .site-main::before,
  .woocommerce-cart main::before,
  .woocommerce-checkout .site-main::before,
  .woocommerce-checkout main::before,
  body[class*="wishlist"] .site-main::before,
  body[class*="wishlist"] main::before,
  body.page-lista-zyczen .site-main::before,
  body.page-lista-zyczen main::before,
  body.page-wishlist .site-main::before,
  body.page-wishlist main::before {
    width: 100vw;
    height: 100svh;
    min-height: 100svh;
    margin-left: calc(50% - 50vw);
    margin-bottom: -100svh;
    background-size: auto 100svh;
    background-position: right center;
    opacity: .22;
  }
}


/* ===== Hover stability fix: menu + archive filters ===== */
@media (min-width: 981px) {
  .lm-menu li.menu-item-has-children {
    position: relative;
  }

  .lm-menu li.menu-item-has-children::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    height: 18px;
    pointer-events: auto;
  }

  .lm-menu .sub-menu > li.menu-item-has-children::after {
    top: 0;
    left: 100%;
    right: auto;
    width: 18px;
    height: 100%;
  }

  .lm-menu li:hover > .sub-menu,
  .lm-menu li:focus-within > .sub-menu,
  .lm-menu li.is-hover-open > .sub-menu,
  .lm-menu li.is-submenu-open > .sub-menu {
    display: block !important;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }

  .lm-menu .sub-menu {
    pointer-events: auto;
  }

  .lm-menu .sub-menu .sub-menu {
    top: 0 !important;
    left: calc(100% + 4px) !important;
  }

  .lm-menu .sub-menu .sub-menu::before {
    content: "";
    position: absolute;
    top: 0;
    right: 100%;
    width: 12px;
    height: 100%;
  }
}

@media (min-width: 769px) {
  .lm-filter-group::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    height: 14px;
    pointer-events: auto;
  }

  .lm-filter-group:hover .lm-filter-group__options,
  .lm-filter-group:focus-within .lm-filter-group__options,
  .lm-filter-group[open] .lm-filter-group__options,
  .lm-filter-group.is-hover-open .lm-filter-group__options {
    display: flex !important;
    flex-direction: column;
    gap: 10px;
  }

  .lm-filter-group.is-hover-open summary::after {
    content: '–';
  }
}


/* Move sale badge away from product title on single product pages */
.single-product .onsale,
.single-product .woocommerce-badge,
.single-product .sale-badge,
.single-product .lm-sale-badge {
  top: 32px !important;
  right: 32px !important;
  transform: translate(0, 0) !important;
}

@media (min-width: 1200px) {
  .single-product .onsale,
  .single-product .woocommerce-badge,
  .single-product .sale-badge,
  .single-product .lm-sale-badge {
    right: 72px !important;
  }
}


/* Extra spacing between menu text and dropdown arrow */
.lm-main-nav .menu-item-has-children > a,
.lm-menu > li.menu-item-has-children > a {
  gap: 19px !important;
}


/* Fix overlapping dropdown arrows in main menu */
.lm-main-nav .menu-item-has-children > a,
.lm-menu > li.menu-item-has-children > a {
  display: inline-flex !important;
  align-items: center !important;
  padding-right: 34px !important;
  position: relative !important;
}

.lm-main-nav .menu-item-has-children > a::after,
.lm-menu > li.menu-item-has-children > a::after {
  position: absolute !important;
  right: 8px !important;
  margin-left: 0 !important;
}

/* keep submenu toggle button from sitting on top of text */
.lm-main-nav .lm-submenu-toggle,
.lm-menu .lm-submenu-toggle {
  margin-left: 8px !important;
  flex: 0 0 auto !important;
}


/* Square hover preview card */
.lm-variant-preview-box {
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
  border-radius: 28px !important;
  padding: 16px !important;
}

.lm-variant-preview-media {
  width: 100% !important;
}

.lm-variant-preview-media img {
  width: 300px !important;
  height: 300px !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: 20px !important;
  display: block !important;
}

.lm-variant-preview-title {
  width: 100% !important;
  display: block !important;
  padding: 16px 6px 6px !important;
  text-align: left !important;
  font-size: 28px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  word-break: break-word !important;
}


/* Hover preview final layout: image on top (3:2), title below */
.lm-variant-preview-box{
  width:320px !important;
  min-width:320px !important;
  max-width:320px !important;
  padding:18px !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}

.lm-variant-preview-box.is-visible{
  display:flex !important;
}

.lm-variant-preview-media{
  width:100% !important;
  margin:0 0 14px 0 !important;
  overflow:hidden !important;
  border-radius:20px !important;
}

.lm-variant-preview-media img{
  width:100% !important;
  height:200px !important;
  min-height:200px !important;
  max-height:200px !important;
  aspect-ratio:3 / 2 !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:20px !important;
}

.lm-variant-preview-title{
  display:block !important;
  width:100% !important;
  padding:0 !important;
  margin:0 !important;
  font-size:24px !important;
  line-height:1.18 !important;
  font-weight:700 !important;
  text-align:left !important;
  white-space:normal !important;
}


/* Final hover preview styling */
.lm-variant-preview-box {
  border: 1px solid var(--accent, #712289) !important;
  box-shadow: 0 18px 44px rgba(113, 34, 137, 0.16) !important;
}

.lm-variant-preview-title {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

/* Fill product variant thumbnails with image */
.lm-variant-mini {
  background: #fff !important;
}

.lm-variant-mini img,
.lm-variant-mini-grid img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

/* Also make gallery thumbnails fully covered */
.lm-thumb img,
.lm-gallery-thumbs img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}


/* Contact page mandala - left side, like category description */
body.page-id-1107 main,
body.page-kontakt main,
body:has(.lm-page-title) main {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

body.page-id-1107 main::before,
body.page-kontakt main::before {
  content: "";
  position: sticky;
  top: 0;
  display: block;
  width: 100vw;
  height: 100vh;
  min-height: 100svh;
  margin-left: calc(50% - 50vw);
  margin-bottom: -100vh;
  z-index: -1;
  pointer-events: none;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png');
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 100vh;
  opacity: .30;
}

@media (max-width: 768px) {
  body.page-id-1107 main::before,
  body.page-kontakt main::before {
    height: 100svh;
    min-height: 100svh;
    margin-bottom: -100svh;
    background-size: auto 100svh;
    background-position: left center;
    opacity: .24;
  }
}


/* ===== Contact page: map + wholesale form ===== */
.lm-contact-page {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.lm-contact-shell {
  width: min(1500px, 88vw);
  margin: 0 auto;
  padding: clamp(70px, 8vw, 130px) 0 clamp(80px, 8vw, 140px);
}

.lm-contact-hero {
  max-width: 720px;
  margin-bottom: clamp(34px, 4vw, 72px);
}

.lm-contact-title {
  font-family: var(--font-serif);
  font-size: clamp(4.4rem, 8vw, 10rem);
  line-height: .88;
  margin: 0;
  color: #111;
  font-weight: 400;
}

.lm-contact-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
  gap: clamp(22px, 3vw, 48px);
  align-items: stretch;
  margin-bottom: clamp(60px, 7vw, 110px);
}

.lm-contact-card {
  border: 1px solid rgba(113, 34, 137, .16);
  border-radius: 34px;
  background: rgba(255,255,255,.72);
  box-shadow: 0 22px 60px rgba(78, 15, 88, .06);
  backdrop-filter: blur(10px);
}

.lm-contact-card--details {
  min-height: 420px;
  padding: clamp(34px, 4vw, 70px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 28px;
}

.lm-contact-logo {
  width: min(340px, 70%);
  height: auto;
  display: block;
}

.lm-contact-links {
  display: grid;
  gap: 16px;
  font-size: clamp(1.05rem, 1.15vw, 1.35rem);
}

.lm-contact-links a {
  color: #111;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.lm-contact-address {
  margin: 14px 0 0;
  font-style: normal;
  font-weight: 700;
  line-height: 1.7;
  color: #111;
  text-transform: uppercase;
  letter-spacing: .02em;
}

.lm-contact-card--map {
  min-height: 420px;
  overflow: hidden;
}

.lm-contact-card--map iframe {
  width: 100%;
  height: 100%;
  min-height: 420px;
  border: 0;
  display: block;
  filter: saturate(.9) contrast(.98);
}

.lm-wholesale-section {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(420px, 1.15fr);
  gap: clamp(28px, 4vw, 72px);
  align-items: start;
  padding-top: clamp(44px, 5vw, 78px);
  border-top: 1px solid rgba(113, 34, 137, .14);
}

.lm-wholesale-copy h2 {
  font-family: var(--font-serif);
  font-weight: 400;
  font-size: clamp(2.3rem, 4vw, 5.2rem);
  line-height: .98;
  margin: 0 0 24px;
}

.lm-wholesale-copy p {
  font-size: clamp(1rem, 1.05vw, 1.25rem);
  line-height: 1.85;
  color: rgba(17,17,17,.78);
  max-width: 620px;
}

.lm-contact-form-card {
  border: 1px solid rgba(113, 34, 137, .18);
  border-radius: 34px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 24px 70px rgba(78,15,88,.08);
  padding: clamp(26px, 3vw, 48px);
}

.lm-contact-form {
  display: grid;
  gap: 18px;
}

.lm-form-row {
  display: grid;
  gap: 8px;
}

.lm-form-row--split {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.lm-contact-form label {
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 700;
  color: var(--accent-dark);
}

.lm-contact-form input,
.lm-contact-form textarea {
  width: 100%;
  border: 1px solid rgba(113,34,137,.16);
  border-radius: 22px;
  background: rgba(255,255,255,.92);
  padding: 16px 18px;
  font-family: var(--font-sans);
  font-size: 1rem;
  color: #111;
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.lm-contact-form textarea {
  resize: vertical;
  min-height: 150px;
}

.lm-contact-form input:focus,
.lm-contact-form textarea:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 4px rgba(113,34,137,.08);
}

.lm-contact-submit {
  min-height: 58px;
  border: 0;
  border-radius: 999px;
  padding: 0 34px;
  background: linear-gradient(135deg, var(--accent-dark), var(--accent));
  color: #fff;
  font-family: var(--font-sans);
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 16px 38px rgba(113,34,137,.24);
}

.lm-contact-alert {
  margin-bottom: 18px;
  padding: 14px 18px;
  border-radius: 18px;
  font-weight: 700;
}

.lm-contact-alert--success {
  color: #1c6b37;
  background: rgba(28,107,55,.10);
  border: 1px solid rgba(28,107,55,.18);
}

.lm-contact-alert--error {
  color: #9f1d33;
  background: rgba(159,29,51,.10);
  border: 1px solid rgba(159,29,51,.18);
}

@media (max-width: 980px) {
  .lm-contact-grid,
  .lm-wholesale-section {
    grid-template-columns: 1fr;
  }

  .lm-form-row--split {
    grid-template-columns: 1fr;
  }

  .lm-contact-card--details,
  .lm-contact-card--map,
  .lm-contact-card--map iframe {
    min-height: 340px;
  }
}


/* ===== FINAL polished Contact page ===== */
.lm-contact-page {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 12% 20%, rgba(216,185,225,.28), transparent 34%),
    linear-gradient(180deg, #fff 0%, #fcfbfd 100%);
}

.lm-contact-page::before {
  content: "";
  position: sticky;
  top: 0;
  display: block;
  width: 100vw;
  height: 100vh;
  min-height: 100svh;
  margin-left: calc(50% - 50vw);
  margin-bottom: -100vh;
  z-index: -1;
  pointer-events: none;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png');
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 100vh;
  opacity: .18;
}

.lm-contact-shell {
  width: min(1380px, 88vw) !important;
  margin: 0 auto !important;
  padding: clamp(72px, 7vw, 120px) 0 clamp(90px, 8vw, 150px) !important;
}

.lm-contact-hero {
  max-width: 820px !important;
  margin: 0 0 clamp(36px, 4vw, 64px) !important;
}

.lm-contact-title {
  font-family: var(--font-serif) !important;
  font-size: clamp(4.5rem, 8vw, 10.5rem) !important;
  line-height: .88 !important;
  font-weight: 400 !important;
  letter-spacing: -.04em !important;
  margin: 0 0 22px !important;
  color: #111 !important;
}

.lm-contact-lead {
  max-width: 650px !important;
  font-size: clamp(1.05rem, 1.2vw, 1.35rem) !important;
  line-height: 1.7 !important;
  color: rgba(17,17,17,.72) !important;
  margin: 0 !important;
}

.lm-contact-top {
  display: grid !important;
  grid-template-columns: minmax(360px, .85fr) minmax(520px, 1.15fr) !important;
  gap: clamp(22px, 3vw, 44px) !important;
  align-items: stretch !important;
  margin-bottom: clamp(58px, 6vw, 96px) !important;
}

.lm-contact-panel {
  border: 1px solid rgba(113,34,137,.16) !important;
  border-radius: 38px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 24px 70px rgba(78,15,88,.08) !important;
  backdrop-filter: blur(14px) !important;
  overflow: hidden !important;
}

.lm-contact-panel--info {
  padding: clamp(34px, 4vw, 64px) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: clamp(28px, 3vw, 44px) !important;
}

.lm-contact-logo-wrap {
  padding-bottom: 26px !important;
  border-bottom: 1px solid rgba(113,34,137,.12) !important;
}

.lm-contact-logo {
  width: min(300px, 78%) !important;
  height: auto !important;
  display: block !important;
}

.lm-contact-info-list {
  display: grid !important;
  gap: 14px !important;
}

.lm-contact-info-item {
  display: block !important;
  text-decoration: none !important;
  padding: 18px 20px !important;
  border: 1px solid rgba(113,34,137,.12) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.66) !important;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}

a.lm-contact-info-item:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(113,34,137,.32) !important;
  box-shadow: 0 14px 34px rgba(78,15,88,.08) !important;
}

.lm-contact-info-item span {
  display: block !important;
  margin-bottom: 6px !important;
  font-family: var(--font-sans) !important;
  font-size: .74rem !important;
  text-transform: uppercase !important;
  letter-spacing: .14em !important;
  font-weight: 800 !important;
  color: var(--accent-dark) !important;
}

.lm-contact-info-item strong {
  display: block !important;
  font-family: var(--font-sans) !important;
  font-size: clamp(1rem, 1.08vw, 1.22rem) !important;
  line-height: 1.35 !important;
  color: #111 !important;
}

.lm-contact-panel--map {
  min-height: 520px !important;
}

.lm-contact-panel--map iframe {
  width: 100% !important;
  height: 100% !important;
  min-height: 520px !important;
  border: 0 !important;
  display: block !important;
  filter: saturate(.88) contrast(.98) brightness(1.02) !important;
}

.lm-wholesale-contact {
  display: grid !important;
  grid-template-columns: minmax(390px, .9fr) minmax(520px, 1.1fr) !important;
  gap: clamp(26px, 4vw, 64px) !important;
  align-items: start !important;
}

.lm-wholesale-card,
.lm-contact-form-card {
  border: 1px solid rgba(113,34,137,.16) !important;
  border-radius: 38px !important;
  background: rgba(255,255,255,.80) !important;
  box-shadow: 0 24px 70px rgba(78,15,88,.08) !important;
  backdrop-filter: blur(14px) !important;
}

.lm-wholesale-card {
  padding: clamp(34px, 4vw, 64px) !important;
  position: sticky !important;
  top: 120px !important;
}

.lm-wholesale-card h2 {
  font-family: var(--font-serif) !important;
  font-weight: 400 !important;
  font-size: clamp(2.5rem, 4.5vw, 5.5rem) !important;
  line-height: .95 !important;
  letter-spacing: -.035em !important;
  margin: 0 0 24px !important;
  color: #111 !important;
}

.lm-wholesale-card p {
  max-width: 620px !important;
  font-size: clamp(1rem, 1.08vw, 1.22rem) !important;
  line-height: 1.85 !important;
  color: rgba(17,17,17,.72) !important;
  margin: 0 0 18px !important;
}

.lm-contact-form-card {
  padding: clamp(30px, 4vw, 56px) !important;
}

.lm-contact-form-card h3 {
  font-family: var(--font-serif) !important;
  font-size: clamp(2.2rem, 3.2vw, 4rem) !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  margin: 0 0 10px !important;
  color: #111 !important;
}

.lm-contact-form-card > p {
  margin: 0 0 30px !important;
  color: rgba(17,17,17,.64) !important;
  font-size: 1rem !important;
}

.lm-contact-form {
  display: grid !important;
  gap: 18px !important;
}

.lm-form-row {
  display: grid !important;
  gap: 10px !important;
}

.lm-form-row--split {
  grid-template-columns: 1fr 1fr !important;
  gap: 18px !important;
}

.lm-contact-form label {
  display: grid !important;
  gap: 10px !important;
}

.lm-contact-form label span,
.lm-form-row > span {
  font-family: var(--font-sans) !important;
  font-size: .74rem !important;
  text-transform: uppercase !important;
  letter-spacing: .14em !important;
  font-weight: 800 !important;
  color: var(--accent-dark) !important;
}

.lm-contact-form input,
.lm-contact-form textarea {
  width: 100% !important;
  border: 1px solid rgba(113,34,137,.16) !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.90) !important;
  padding: 17px 19px !important;
  font-family: var(--font-sans) !important;
  font-size: 1rem !important;
  line-height: 1.4 !important;
  color: #111 !important;
  outline: none !important;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}

.lm-contact-form textarea {
  min-height: 158px !important;
  resize: vertical !important;
}

.lm-contact-form input:focus,
.lm-contact-form textarea:focus {
  border-color: var(--accent) !important;
  background: #fff !important;
  box-shadow: 0 0 0 5px rgba(113,34,137,.08) !important;
}

.lm-contact-submit {
  justify-self: start !important;
  min-height: 60px !important;
  border: 0 !important;
  border-radius: 999px !important;
  padding: 0 38px !important;
  background: linear-gradient(135deg, var(--accent-dark), var(--accent)) !important;
  color: #fff !important;
  font-family: var(--font-sans) !important;
  font-size: .9rem !important;
  font-weight: 900 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: 0 18px 42px rgba(113,34,137,.24) !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}

.lm-contact-submit:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 24px 54px rgba(113,34,137,.30) !important;
}

.lm-contact-alert {
  margin: 0 0 18px !important;
  padding: 14px 18px !important;
  border-radius: 18px !important;
  font-weight: 800 !important;
  font-family: var(--font-sans) !important;
}

.lm-contact-alert--success {
  color: #1c6b37 !important;
  background: rgba(28,107,55,.10) !important;
  border: 1px solid rgba(28,107,55,.18) !important;
}

.lm-contact-alert--error {
  color: #9f1d33 !important;
  background: rgba(159,29,51,.10) !important;
  border: 1px solid rgba(159,29,51,.18) !important;
}

@media (max-width: 1100px) {
  .lm-contact-top,
  .lm-wholesale-contact {
    grid-template-columns: 1fr !important;
  }

  .lm-wholesale-card {
    position: relative !important;
    top: auto !important;
  }
}

@media (max-width: 680px) {
  .lm-contact-shell {
    width: min(92vw, 100%) !important;
  }

  .lm-form-row--split {
    grid-template-columns: 1fr !important;
  }

  .lm-contact-panel--map,
  .lm-contact-panel--map iframe {
    min-height: 360px !important;
  }

  .lm-contact-title {
    font-size: clamp(4rem, 18vw, 6rem) !important;
  }
}


/* ===== Contact page final: align with homepage/subpage styling ===== */
.lm-contact-page {
  background: #fcfbfd !important;
}

.lm-contact-page::before {
  opacity: .14 !important;
  background-position: left center !important;
}

.lm-contact-shell {
  width: min(1320px, 86vw) !important;
  padding: clamp(54px, 5vw, 86px) 0 clamp(72px, 6vw, 110px) !important;
}

.lm-contact-hero {
  max-width: 620px !important;
  margin-bottom: clamp(28px, 3.4vw, 50px) !important;
}

.lm-contact-title {
  font-family: var(--font-serif) !important;
  font-size: clamp(3.4rem, 6vw, 7.2rem) !important;
  line-height: .95 !important;
  letter-spacing: -.035em !important;
  font-weight: 400 !important;
  margin-bottom: 18px !important;
}

.lm-contact-lead {
  max-width: 520px !important;
  font-size: clamp(.98rem, 1vw, 1.12rem) !important;
  line-height: 1.8 !important;
  color: rgba(17,17,17,.68) !important;
}

.lm-contact-top {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
  gap: clamp(22px, 2.6vw, 38px) !important;
  margin-bottom: clamp(46px, 5vw, 78px) !important;
}

.lm-contact-panel,
.lm-wholesale-card,
.lm-contact-form-card {
  border-radius: 30px !important;
  box-shadow: 0 18px 48px rgba(78,15,88,.06) !important;
  background: rgba(255,255,255,.74) !important;
}

.lm-contact-panel--info {
  min-height: 380px !important;
  padding: clamp(28px, 3vw, 46px) !important;
  gap: 26px !important;
}

.lm-contact-logo-wrap {
  padding-bottom: 20px !important;
}

.lm-contact-logo {
  width: min(240px, 70%) !important;
}

.lm-contact-info-list {
  gap: 12px !important;
}

.lm-contact-info-item {
  border-radius: 20px !important;
  padding: 15px 18px !important;
}

.lm-contact-info-item span {
  font-size: .68rem !important;
  letter-spacing: .13em !important;
}

.lm-contact-info-item strong {
  font-size: clamp(.94rem, .98vw, 1.08rem) !important;
}

.lm-contact-panel--map,
.lm-contact-panel--map iframe {
  min-height: 380px !important;
}

.lm-wholesale-contact {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
  gap: clamp(22px, 3vw, 44px) !important;
  align-items: stretch !important;
}

.lm-wholesale-card,
.lm-contact-form-card {
  padding: clamp(30px, 3vw, 48px) !important;
}

.lm-wholesale-card {
  position: relative !important;
  top: auto !important;
}

.lm-wholesale-card h2,
.lm-contact-form-card h3 {
  font-family: var(--font-serif) !important;
  font-weight: 400 !important;
  letter-spacing: -.025em !important;
}

.lm-wholesale-card h2 {
  font-size: clamp(2.2rem, 3.4vw, 4.2rem) !important;
  line-height: 1.02 !important;
  margin-bottom: 18px !important;
}

.lm-wholesale-card p {
  font-size: clamp(.96rem, 1vw, 1.1rem) !important;
  line-height: 1.85 !important;
  margin-bottom: 14px !important;
}

.lm-contact-form-card h3 {
  font-size: clamp(2.1rem, 3vw, 3.6rem) !important;
  line-height: 1.02 !important;
}

.lm-contact-form-card > p {
  font-size: .96rem !important;
  margin-bottom: 24px !important;
}

.lm-contact-form {
  gap: 15px !important;
}

.lm-form-row--split {
  gap: 15px !important;
}

.lm-contact-form label span,
.lm-form-row > span {
  font-size: .68rem !important;
  letter-spacing: .13em !important;
}

.lm-contact-form input,
.lm-contact-form textarea {
  border-radius: 18px !important;
  padding: 14px 16px !important;
  font-size: .96rem !important;
}

.lm-contact-form textarea {
  min-height: 132px !important;
}

.lm-contact-submit {
  min-height: 54px !important;
  padding: 0 30px !important;
  font-size: .82rem !important;
  box-shadow: 0 14px 34px rgba(113,34,137,.20) !important;
}

@media (max-width: 1100px) {
  .lm-contact-top,
  .lm-wholesale-contact {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 680px) {
  .lm-contact-shell {
    width: min(92vw, 100%) !important;
    padding-top: 46px !important;
  }

  .lm-contact-title {
    font-size: clamp(3.4rem, 16vw, 5.4rem) !important;
  }

  .lm-form-row--split {
    grid-template-columns: 1fr !important;
  }

  .lm-contact-panel--map,
  .lm-contact-panel--map iframe {
    min-height: 320px !important;
  }
}


/* ===== Contact final adjustment: category H1 size + full-width sticky mandala ===== */
.lm-contact-page {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
}

.lm-contact-page::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .30 !important;
}

/* H1 same scale as category/single taxonomy titles */
.lm-contact-title {
  font-family: var(--font-serif) !important;
  font-size: clamp(5.2rem, 9vw, 11rem) !important;
  line-height: .88 !important;
  letter-spacing: -.045em !important;
  font-weight: 400 !important;
}

@media (max-width: 1024px) {
  .lm-contact-page::before {
    height: 100svh !important;
    min-height: 100svh !important;
    margin-bottom: -100svh !important;
    background-size: auto 100svh !important;
    background-position: left center !important;
    opacity: .28 !important;
  }
}

@media (max-width: 680px) {
  .lm-contact-title {
    font-size: clamp(4rem, 18vw, 7rem) !important;
  }

  .lm-contact-page::before {
    opacity: .24 !important;
  }
}


/* ===== Contact page width + wholesale heading fix ===== */

/* same width as other internal pages */
.lm-contact-shell {
  width: min(1240px, calc(100vw - 64px)) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* remove decorative line before WSPÓŁPRACA HURTOWA */
.lm-wholesale-card .lm-section-heading::before,
.lm-wholesale-card .lm-section-heading span::before,
.lm-wholesale-card .lm-section-heading:before {
  display: none !important;
  content: none !important;
}

.lm-wholesale-card .lm-section-heading {
  padding-left: 0 !important;
  margin-left: 0 !important;
}

@media (max-width: 768px) {
  .lm-contact-shell {
    width: calc(100vw - 32px) !important;
  }
}


/* ===== Kontakt: category-width simple layout override ===== */
.lm-contact-page {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
  background: #fcfbfd !important;
}

.lm-contact-page::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .24 !important;
}

.lm-contact-shell {
  width: var(--container) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 56px 0 96px !important;
  position: relative !important;
  z-index: 1 !important;
}

.lm-contact-header {
  margin-bottom: 32px !important;
}

.lm-contact-title {
  font-size: clamp(2.4rem, 5vw, 4.8rem) !important;
  line-height: .95 !important;
  margin: 0 0 12px !important;
  letter-spacing: 0 !important;
}

.lm-contact-grid,
.lm-contact-wholesale {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 32px !important;
  align-items: stretch !important;
  margin: 0 0 56px !important;
}

.lm-contact-details,
.lm-contact-map,
.lm-contact-wholesale-copy,
.lm-contact-form {
  border: 1px solid rgba(113,34,137,.14) !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.76) !important;
  box-shadow: 0 18px 48px rgba(78,15,88,.06) !important;
  backdrop-filter: blur(10px) !important;
}

.lm-contact-details {
  padding: 36px !important;
  display: grid !important;
  gap: 16px !important;
  align-content: center !important;
}

.lm-contact-logo {
  width: 220px !important;
  max-width: 70% !important;
  height: auto !important;
  margin: 0 0 18px !important;
}

.lm-contact-details a,
.lm-contact-details address {
  display: block !important;
  margin: 0 !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(113,34,137,.10) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.68) !important;
  color: #111 !important;
  text-decoration: none !important;
  font-style: normal !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
}

.lm-contact-details span,
.lm-contact-form span {
  display: block !important;
  margin-bottom: 7px !important;
  color: var(--accent-dark) !important;
  font-family: var(--font-sans) !important;
  font-size: .68rem !important;
  font-weight: 800 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}

.lm-contact-map {
  width: 100% !important;
  min-height: 420px !important;
  height: 100% !important;
  border: 0 !important;
  overflow: hidden !important;
}

.lm-contact-wholesale {
  margin-bottom: 0 !important;
}

.lm-contact-wholesale-copy,
.lm-contact-form {
  padding: 36px !important;
}

.lm-contact-wholesale-copy h2,
.lm-contact-form h2 {
  font-family: var(--font-serif) !important;
  font-weight: 400 !important;
  font-size: clamp(2.1rem, 3.2vw, 3.6rem) !important;
  line-height: 1.02 !important;
  margin: 0 0 18px !important;
  letter-spacing: -.02em !important;
}

.lm-contact-wholesale-copy p,
.lm-contact-form > p {
  font-size: 1rem !important;
  line-height: 1.75 !important;
  color: rgba(17,17,17,.70) !important;
  margin: 0 0 14px !important;
}

.lm-contact-form {
  display: grid !important;
  gap: 15px !important;
}

.lm-contact-form-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 15px !important;
}

.lm-contact-form label {
  display: grid !important;
  gap: 0 !important;
}

.lm-contact-form input,
.lm-contact-form textarea {
  width: 100% !important;
  border: 1px solid rgba(113,34,137,.16) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.9) !important;
  padding: 14px 16px !important;
  font-family: var(--font-sans) !important;
  font-size: 1rem !important;
  color: #111 !important;
  outline: none !important;
}

.lm-contact-form textarea {
  min-height: 132px !important;
  resize: vertical !important;
}

.lm-contact-form input:focus,
.lm-contact-form textarea:focus {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 4px rgba(113,34,137,.08) !important;
}

.lm-contact-form button {
  justify-self: start !important;
  min-height: 54px !important;
  padding: 0 30px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--accent-dark), var(--accent)) !important;
  color: #fff !important;
  font-family: var(--font-sans) !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: 0 14px 34px rgba(113,34,137,.20) !important;
}

@media (max-width: 980px) {
  .lm-contact-grid,
  .lm-contact-wholesale,
  .lm-contact-form-row {
    grid-template-columns: 1fr !important;
  }

  .lm-contact-shell {
    padding: 42px 0 72px !important;
  }

  .lm-contact-map {
    min-height: 340px !important;
  }
}


/* ===== FINAL Kontakt: H1 like category pages + full viewport sticky mandala ===== */

/* Contact page must use the same content width as category archives */
.lm-contact-shell {
  width: var(--container) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 56px 0 96px !important;
}

/* H1 exactly like category title, no oversized contact-specific styling */
.lm-contact-title,
.lm-contact-page .lm-taxonomy-title {
  font-family: var(--font-serif) !important;
  font-size: clamp(2.4rem, 5vw, 4.8rem) !important;
  line-height: .95 !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
  margin: 0 0 12px !important;
  color: #111 !important;
}

/* Keep intro text like normal archive/category description */
.lm-contact-page .lm-shop-description {
  font-size: 1rem !important;
  line-height: 1.9 !important;
  color: rgba(17,17,17,.72) !important;
  max-width: 820px !important;
}

/* Mandala must not be limited by contact content width */
.lm-contact-page {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
}

.lm-contact-page::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: auto 100vh !important;
  opacity: .34 !important;
}

/* Content stays above the full-width mandala */
.lm-contact-shell,
.lm-contact-grid,
.lm-contact-wholesale {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 1024px) {
  .lm-contact-page::before {
    height: 100svh !important;
    min-height: 100svh !important;
    margin-bottom: -100svh !important;
    background-size: auto 100svh !important;
    background-position: right center !important;
    opacity: .30 !important;
  }
}

@media (max-width: 768px) {
  .lm-contact-shell {
    width: calc(100vw - 32px) !important;
    padding: 42px 0 72px !important;
  }

  .lm-contact-title,
  .lm-contact-page .lm-taxonomy-title {
    font-size: clamp(2.4rem, 14vw, 4.8rem) !important;
  }

  .lm-contact-page::before {
    opacity: .26 !important;
  }
}


/* ===== Contact form button shine effect like add-to-cart ===== */
.lm-contact-form button {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

.lm-contact-form button::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    115deg,
    transparent 0%,
    rgba(255,255,255,0) 35%,
    rgba(255,255,255,.28) 48%,
    rgba(255,255,255,.55) 50%,
    rgba(255,255,255,.28) 52%,
    rgba(255,255,255,0) 65%,
    transparent 100%
  ) !important;
  transform: translateX(-160%) skewX(-24deg) !important;
  transition: transform .9s cubic-bezier(.19,1,.22,1) !important;
  z-index: -1 !important;
}

.lm-contact-form button:hover::before {
  transform: translateX(160%) skewX(-24deg) !important;
}

.lm-contact-form button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 18px 42px rgba(113,34,137,.28) !important;
}


/* ===== Contact button: identical to product add-to-cart shimmer ===== */
.lm-contact-form button,
.lm-contact-submit {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  border: none !important;
  color: #fff !important;
  background: linear-gradient(135deg, #4a1768 0%, #612183 38%, #7a39a4 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 8px 22px rgba(111,44,143,0.16) !important;
  filter: none !important;
}

.lm-contact-form button::before,
.lm-contact-submit::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.08) 22%, rgba(255,255,255,0.22) 34%, rgba(255,255,255,0.05) 48%, rgba(255,255,255,0) 62%) !important;
  opacity: .55 !important;
  pointer-events: none !important;
  transform: none !important;
  transition: none !important;
  z-index: 0 !important;
}

.lm-contact-form button::after,
.lm-contact-submit::after {
  content: "" !important;
  position: absolute !important;
  top: -12% !important;
  left: -38% !important;
  width: 32% !important;
  height: 124% !important;
  background: linear-gradient(100deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.1) 20%, rgba(255,255,255,0.5) 48%, rgba(255,255,255,0.14) 72%, rgba(255,255,255,0) 100%) !important;
  transform: skewX(-22deg) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

@media (hover: hover) {
  .lm-contact-form button:hover::after,
  .lm-contact-submit:hover::after {
    animation: lmButtonShine 1.05s ease forwards !important;
  }

  .lm-contact-form button:hover,
  .lm-contact-submit:hover {
    filter: brightness(1.02) !important;
    transform: none !important;
  }
}

.lm-contact-form button > *,
.lm-contact-submit > * {
  position: relative !important;
  z-index: 2 !important;
}

/* ===== About page: homepage-aligned editorial layout ===== */
.lm-about-page {
  position: relative;
  isolation: isolate;
  overflow: visible;
  background: #fcfbfd;
}

.lm-about-page::before {
  content: "";
  position: sticky;
  top: 0;
  display: block;
  width: 100vw;
  height: 100vh;
  min-height: 100svh;
  margin-left: calc(50% - 50vw);
  margin-bottom: -100vh;
  z-index: -1;
  pointer-events: none;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png');
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto 100vh;
  opacity: .22;
}

.lm-about-shell {
  width: var(--container);
  margin: 0 auto;
  padding: 56px 0 96px;
  position: relative;
  z-index: 1;
}

.lm-about-header {
  margin-bottom: 42px;
}

.lm-about-title {
  font-size: clamp(2.4rem, 5vw, 4.8rem) !important;
  line-height: .95 !important;
  margin: 0 0 12px !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
}

.lm-about-row {
  display: grid;
  grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
  gap: clamp(28px, 4vw, 68px);
  align-items: center;
  margin: 0 0 74px;
}

.lm-about-row--reverse {
  grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr);
}

.lm-about-copy {
  max-width: 680px;
}

.lm-about-lead {
  font-family: var(--font-serif);
  font-size: clamp(2rem, 3.1vw, 4rem);
  line-height: 1.08;
  letter-spacing: -.02em;
  color: #111;
  margin: 0;
}

.lm-about-copy h2,
.lm-about-final h2 {
  font-family: var(--font-serif);
  font-weight: 400;
  font-size: clamp(2rem, 3.4vw, 4.2rem);
  line-height: 1.02;
  letter-spacing: -.02em;
  margin: 0 0 20px;
  color: #111;
}

.lm-about-copy p,
.lm-about-final p,
.lm-about-quote p {
  font-size: 1rem;
  line-height: 1.9;
  color: rgba(17,17,17,.74);
  margin: 0 0 16px;
}

.lm-about-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin: 0;
}

.lm-about-gallery img,
.lm-about-media-card img {
  width: 100%;
  height: 100%;
  min-height: 380px;
  object-fit: cover;
  border-radius: 30px;
  border: 1px solid rgba(113,34,137,.12);
  box-shadow: 0 24px 58px rgba(78,15,88,.08);
}

.lm-about-gallery img:nth-child(2) {
  transform: translateY(44px);
}

.lm-about-media-card {
  min-height: 430px;
  border-radius: 30px;
  overflow: hidden;
}

.lm-about-placeholder {
  min-height: 430px;
  display: grid;
  place-items: center;
  border: 1px dashed rgba(113,34,137,.25);
  border-radius: 30px;
  background: rgba(255,255,255,.68);
  color: var(--accent-dark);
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-align: center;
  padding: 24px;
}

.lm-about-quote {
  width: min(1080px, 100%);
  margin: 0 auto 78px;
  padding: clamp(32px, 4vw, 56px);
  border: 1px solid rgba(113,34,137,.14);
  border-radius: 32px;
  background: rgba(255,255,255,.76);
  box-shadow: 0 22px 56px rgba(78,15,88,.06);
}

.lm-about-quote blockquote {
  margin: 0;
}

.lm-about-quote p {
  font-size: clamp(1.05rem, 1.18vw, 1.24rem);
  line-height: 1.95;
  color: rgba(17,17,17,.78);
}

.lm-about-final {
  width: min(980px, 100%);
  margin: 0 auto;
  padding: clamp(34px, 5vw, 68px);
  text-align: center;
  border-radius: 34px;
  background:
    radial-gradient(circle at 50% 0%, rgba(216,185,225,.22), transparent 48%),
    rgba(255,255,255,.72);
  border: 1px solid rgba(113,34,137,.14);
  box-shadow: 0 22px 56px rgba(78,15,88,.06);
}

@media (max-width: 980px) {
  .lm-about-row,
  .lm-about-row--reverse {
    grid-template-columns: 1fr;
    gap: 32px;
    margin-bottom: 58px;
  }

  .lm-about-row--reverse .lm-about-copy {
    order: 2;
  }

  .lm-about-row--reverse .lm-about-media-card {
    order: 1;
  }

  .lm-about-gallery img:nth-child(2) {
    transform: none;
  }
}

@media (max-width: 640px) {
  .lm-about-shell {
    width: calc(100vw - 32px);
    padding: 42px 0 72px;
  }

  .lm-about-gallery {
    grid-template-columns: 1fr;
  }

  .lm-about-gallery img,
  .lm-about-media-card img,
  .lm-about-placeholder,
  .lm-about-media-card {
    min-height: 300px;
  }
}


/* ===== O nas: homepage-style alternating layout ===== */
.lm-about-page--homepage-style {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
  background: #fcfbfd !important;
}

.lm-about-page--homepage-style::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: auto 100vh !important;
  opacity: .26 !important;
}

.lm-about-page--homepage-style .lm-about-shell {
  width: var(--container) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 56px 0 96px !important;
  position: relative !important;
  z-index: 1 !important;
}

.lm-about-page--homepage-style .lm-about-title {
  font-size: clamp(2.4rem, 5vw, 4.8rem) !important;
  line-height: .95 !important;
  margin: 0 0 12px !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
}

.lm-about-home-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: clamp(32px, 5vw, 76px) !important;
  align-items: center !important;
  margin: 0 0 clamp(70px, 8vw, 120px) !important;
}

.lm-about-home-row--reverse {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
}

.lm-about-home-copy {
  max-width: 650px !important;
}

.lm-about-home-copy p,
.lm-about-home-copy blockquote {
  font-family: var(--font-sans) !important;
  font-size: clamp(1rem, 1.05vw, 1.15rem) !important;
  line-height: 1.9 !important;
  color: rgba(17,17,17,.76) !important;
  margin: 0 0 18px !important;
}

.lm-about-home-copy blockquote {
  padding: 24px 28px !important;
  border-left: 3px solid var(--accent) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.72) !important;
  box-shadow: 0 18px 44px rgba(78,15,88,.06) !important;
  font-style: normal !important;
}

.lm-about-home-media {
  margin: 0 !important;
  width: 100% !important;
  min-height: 440px !important;
  border-radius: 32px !important;
  overflow: hidden !important;
  border: 1px solid rgba(113,34,137,.14) !important;
  box-shadow: 0 24px 60px rgba(78,15,88,.08) !important;
  background: rgba(255,255,255,.72) !important;
}

.lm-about-home-media img {
  width: 100% !important;
  height: 100% !important;
  min-height: 440px !important;
  object-fit: cover !important;
  display: block !important;
}

.lm-about-home-placeholder {
  min-height: 440px !important;
  display: grid !important;
  place-items: center !important;
  padding: 34px !important;
  text-align: center !important;
  color: var(--accent-dark) !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  background: rgba(255,255,255,.68) !important;
}

.lm-about-home-final {
  width: min(980px, 100%) !important;
  margin: 0 auto !important;
  text-align: center !important;
  padding: clamp(32px, 5vw, 64px) !important;
}

.lm-about-home-final p {
  font-family: var(--font-serif) !important;
  font-size: clamp(1.8rem, 3vw, 3.4rem) !important;
  line-height: 1.18 !important;
  font-weight: 400 !important;
  letter-spacing: -.02em !important;
  color: #111 !important;
  margin: 0 !important;
}

@media (max-width: 1024px) {
  .lm-about-page--homepage-style::before {
    height: 100svh !important;
    min-height: 100svh !important;
    margin-bottom: -100svh !important;
    background-size: auto 100svh !important;
    opacity: .22 !important;
  }

  .lm-about-home-row,
  .lm-about-home-row--reverse {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  .lm-about-home-row--reverse .lm-about-home-media {
    order: 2 !important;
  }

  .lm-about-home-row--reverse .lm-about-home-copy {
    order: 1 !important;
  }
}

@media (max-width: 640px) {
  .lm-about-page--homepage-style .lm-about-shell {
    width: calc(100vw - 32px) !important;
    padding: 42px 0 72px !important;
  }

  .lm-about-home-media,
  .lm-about-home-media img,
  .lm-about-home-placeholder {
    min-height: 300px !important;
  }

  .lm-about-home-copy blockquote {
    padding: 20px !important;
  }
}


/* ===== O nas: editable sections + subtle quote final override ===== */
.lm-about-home-copy blockquote {
  padding: 0 0 0 20px !important;
  margin: 18px 0 0 !important;
  border-left: 2px solid rgba(113,34,137,.42) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.lm-about-home-copy blockquote,
.lm-about-home-copy blockquote p {
  font-size: clamp(.92rem, .96vw, 1.04rem) !important;
  line-height: 1.82 !important;
  color: rgba(17,17,17,.62) !important;
  font-style: italic !important;
}

.lm-about-home-final p {
  margin: 0 !important;
}


/* ===== Category description spacing ===== */
.lm-category-description,
.taxonomy-description,
.term-description,
.woocommerce-products-header + .term-description {
    margin-top: 20px !important;
}

.lm-category-description .lm-section-kicker,
.term-description .lm-section-kicker {
    margin-top: 20px !important;
}


/* ===== Home bestsellers: price only under product name ===== */
.bestsellers-section .best-specs {
  display: none !important;
}

.bestsellers-section .best-price,
.lm-related-products-section .best-price {
  margin-top: 10px !important;
  font-family: var(--font-sans) !important;
  font-size: .9rem !important;
  line-height: 1.3 !important;
  color: rgba(17,17,17,.58) !important;
  letter-spacing: .04em !important;
  text-transform: none !important;
}

.bestsellers-section .best-price del,
.lm-related-products-section .best-price del {
  opacity: .45 !important;
  margin-right: 6px !important;
}

.bestsellers-section .best-price ins,
.lm-related-products-section .best-price ins {
  color: var(--accent-dark) !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

/* ===== Product page related carousel: sale badge like category cards ===== */
.lm-related-products-section .product-card-image {
  position: relative !important;
}

.lm-related-sale-badge {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 58px !important;
  height: 58px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: #e01f3d !important;
  color: #fff !important;
  font-family: var(--font-sans) !important;
  font-size: .95rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 12px 28px rgba(224,31,61,.22) !important;
}

.lm-related-products-section .best-meta .best-name {
  margin-bottom: 0 !important;
}


/* ===== Bestsellery: płynny półokrąg, dokładne skalowanie, zdjęcia 1:1 ===== */
.bestsellers-section .bestsellers-arc-shell {
  min-height: 560px !important;
  overflow: hidden !important;
}

.bestsellers-section .bestsellers-scroller {
  align-items: flex-start !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 70px 3vw 46px !important;
  scroll-snap-type: none !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
}

.bestsellers-section .arc-card {
  flex: 0 0 clamp(230px, 18vw, 320px) !important;
  min-width: clamp(230px, 18vw, 320px) !important;
  transform: translate3d(0, var(--offsetY), 0) scale(var(--scale)) !important;
  transform-origin: center top !important;
  transition: transform .12s linear !important;
  will-change: transform !important;
  opacity: 1 !important;
}

.bestsellers-section .product-card-image {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  display: block !important;
  overflow: hidden !important;
}

.bestsellers-section .product-card-image img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

.bestsellers-section .arc-card.is-current .best-name {
  color: white !important;
  background: rgba(162, 97, 183, 0.58) !important;
  display: inline-block !important;
  padding: .1em .14em !important;
}

.bestsellers-section .best-meta {
  min-height: 96px !important;
}


/* ===== Product page related carousel: same styling as homepage bestsellers ===== */
.single-product .lm-related-products-section {
  margin-top: 90px !important;
}

.single-product .lm-related-arc-section .lm-section-heading {
  margin-bottom: 42px !important;
}

.single-product .lm-related-arc-shell {
  position: relative !important;
  min-height: 560px !important;
  overflow: hidden !important;
}

.single-product .lm-related-arc-shell::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  opacity: .55 !important;
  background:
    linear-gradient(180deg, transparent 0%, transparent 28%, rgba(214,198,221,.62) 28.2%, transparent 28.55%, transparent 100%);
  mask-image: radial-gradient(120% 55% at 50% 35%, #000 0 58%, transparent 59%);
  -webkit-mask-image: radial-gradient(120% 55% at 50% 35%, #000 0 58%, transparent 59%);
}

.single-product .lm-related-scroller {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 2.2vw !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 70px 3vw 46px !important;
  scroll-snap-type: none !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  cursor: grab !important;
}

.single-product .lm-related-scroller::-webkit-scrollbar {
  display: none !important;
}

.single-product .lm-related-scroller .arc-card {
  flex: 0 0 clamp(230px, 18vw, 320px) !important;
  min-width: clamp(230px, 18vw, 320px) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  opacity: 1 !important;
  transform: translate3d(0, var(--offsetY), 0) scale(var(--scale)) !important;
  transform-origin: center top !important;
  transition: transform .12s linear !important;
  will-change: transform !important;
}

.single-product .lm-related-scroller .product-card-image {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  display: block !important;
  position: relative !important;
  overflow: hidden !important;
  border-radius: 28px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.52) 0%, rgba(255,255,255,0.24) 100%),
    linear-gradient(135deg, rgba(216,185,225,0.14) 0%, rgba(113,34,137,0.05) 100%) !important;
  border: 1px solid rgba(255,255,255,0.46) !important;
  box-shadow: 0 24px 32px rgba(78,15,88,0.07), inset 0 1px 0 rgba(255,255,255,0.42) !important;
}

.single-product .lm-related-scroller .product-card-image img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

.single-product .lm-related-scroller .best-meta {
  text-align: center !important;
  margin-top: 1rem !important;
  min-height: 96px !important;
}

.single-product .lm-related-scroller .best-name {
  font-family: var(--font-serif) !important;
  font-size: clamp(1.35rem, 1.8vw, 2.15rem) !important;
  line-height: 1.05 !important;
  font-style: italic !important;
  color: rgba(17,17,17,0.72) !important;
  margin-bottom: .55rem !important;
}

.single-product .lm-related-scroller .arc-card.is-current .best-name {
  color: white !important;
  background: rgba(162, 97, 183, 0.58) !important;
  display: inline-block !important;
  padding: .1em .14em !important;
}

.single-product .lm-related-scroller .best-price {
  margin-top: 8px !important;
  font-family: var(--font-sans) !important;
  font-size: .9rem !important;
  color: rgba(17,17,17,.58) !important;
}


/* Smaller typography for related carousel titles */
.single-product .lm-related-scroller .best-name {
    font-size: clamp(1.2rem, 1.7vw, 1.8rem) !important;
    line-height: 1.25 !important;
    margin-bottom: 0.7rem !important;
    font-style: normal !important;
}


/* ===== Product page: category carousel below product description ===== */
.single-product .lm-product-description-full + .lm-related-products-section,
.single-product .lm-related-products-section {
  margin-top: 72px !important;
  padding-top: 0 !important;
  clear: both !important;
}

.single-product .lm-related-arc-section .lm-section-heading {
  margin-bottom: 36px !important;
}

.single-product .lm-related-arc-section .lm-section-heading span,
.single-product .lm-related-arc-section .lm-section-heading a {
  font-size: .82rem !important;
  line-height: 1.35 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  font-family: var(--font-sans) !important;
  font-weight: 800 !important;
}

.single-product .lm-related-scroller .best-name {
  font-size: clamp(1.05rem, 1.35vw, 1.45rem) !important;
  line-height: 1.22 !important;
  margin-bottom: .55rem !important;
  font-style: italic !important;
  max-width: 280px !important;
}

.single-product .lm-related-scroller .arc-card.is-current .best-name {
  padding: .12em .18em !important;
}

.single-product .lm-related-scroller .best-price {
  font-size: .86rem !important;
  line-height: 1.3 !important;
}

.single-product .lm-related-scroller .best-meta {
  min-height: 82px !important;
}

.single-product .lm-related-arc-shell {
  min-height: 500px !important;
}

.single-product .lm-related-scroller {
  padding-top: 62px !important;
  padding-bottom: 42px !important;
}

@media (max-width: 768px) {
  .single-product .lm-related-scroller .best-name {
    font-size: 1.05rem !important;
    max-width: 230px !important;
  }

  .single-product .lm-related-arc-shell {
    min-height: 430px !important;
  }
}


/* Ensure related category carousel appears consistently on product pages */
.single-product .lm-related-products-section {
  display: block !important;
  margin-top: 72px !important;
}

.single-product .lm-related-arc-shell {
  min-height: 500px !important;
  overflow: hidden !important;
}

.single-product .lm-related-scroller {
  display: flex !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  gap: 2.2vw !important;
  padding: 62px 3vw 42px !important;
  scrollbar-width: none !important;
}

.single-product .lm-related-scroller::-webkit-scrollbar {
  display: none !important;
}

.single-product .lm-related-scroller .arc-card {
  flex: 0 0 clamp(230px, 18vw, 320px) !important;
  min-width: clamp(230px, 18vw, 320px) !important;
}

.single-product .lm-related-scroller .product-card-image {
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
}

.single-product .lm-related-scroller .product-card-image img {
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}

.single-product .lm-related-scroller .best-name {
  font-size: clamp(1.05rem, 1.35vw, 1.45rem) !important;
  line-height: 1.22 !important;
  font-style: italic !important;
  max-width: 280px !important;
}


/* Related carousel under product description: exact same product category */
.single-product .lm-product-description-full + .lm-related-products-section {
  display: block !important;
  margin-top: 72px !important;
}


/* Related carousel: always fit 3 products on desktop */
@media (min-width: 1025px) {
  .single-product .lm-related-scroller {
    gap: 2.2vw !important;
  }

  .single-product .lm-related-scroller .arc-card {
    flex: 0 0 calc((100% - 4.4vw) / 3) !important;
    min-width: calc((100% - 4.4vw) / 3) !important;
    max-width: calc((100% - 4.4vw) / 3) !important;
  }
}


/* Related carousel: show 4 cards on desktop */
@media (min-width: 1025px) {
  .single-product .lm-related-scroller {
    gap: 2.2vw !important;
  }

  .single-product .lm-related-scroller .arc-card {
    flex: 0 0 calc((100% - 6.6vw) / 4) !important;
    min-width: calc((100% - 6.6vw) / 4) !important;
    max-width: calc((100% - 6.6vw) / 4) !important;
  }
}

@media (max-width: 1024px) {
  .single-product .lm-related-scroller .arc-card {
    flex: 0 0 calc((100% - 18px) / 2) !important;
    min-width: calc((100% - 18px) / 2) !important;
    max-width: calc((100% - 18px) / 2) !important;
  }
}


/* Archive/category hover image: only animate when a real second image exists.
   Products without a gallery/second image keep the primary image unchanged on hover. */
.lm-product-card:hover .lm-archive-thumb > .lm-archive-thumb-img--primary,
.lm-product-card:focus-within .lm-archive-thumb > .lm-archive-thumb-img--primary {
  opacity: 1 !important;
  transform: none !important;
}

.lm-product-card:hover .lm-archive-thumb-stack .lm-archive-thumb-img--primary,
.lm-product-card:focus-within .lm-archive-thumb-stack .lm-archive-thumb-img--primary {
  opacity: 0 !important;
}

.lm-product-card:hover .lm-archive-thumb-stack .lm-archive-thumb-img--hover,
.lm-product-card:focus-within .lm-archive-thumb-stack .lm-archive-thumb-img--hover {
  opacity: 1 !important;
  transform: scale(1.015) !important;
}

/* ===== Joga landing page ===== */
.lm-joga-page{position:relative;isolation:isolate;overflow:visible;background:#fcfbfd}
.lm-joga-page::before{content:"";position:sticky;top:0;display:block;width:100vw;height:100vh;min-height:100svh;margin-left:calc(50% - 50vw);margin-bottom:-100vh;z-index:-1;pointer-events:none;background-image:url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png');background-repeat:no-repeat;background-position:right center;background-size:auto 100vh;opacity:.22}
.lm-joga-shell{width:var(--container);margin:0 auto;padding:56px 0 110px;position:relative;z-index:1}
.lm-joga-hero,.lm-joga-category-editorial{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(34px,5vw,78px);align-items:center}
.lm-joga-hero{margin-bottom:clamp(70px,8vw,120px)}
.lm-joga-title{font-size:clamp(2.4rem,5vw,4.8rem)!important;line-height:.95!important;margin:0 0 16px!important;letter-spacing:0!important}
.lm-joga-cta{margin-top:24px}
.lm-joga-hero-media,.lm-joga-category-image{margin:0;min-height:460px;border-radius:34px;overflow:hidden;border:1px solid rgba(113,34,137,.14);background:rgba(255,255,255,.72);box-shadow:0 24px 60px rgba(78,15,88,.08)}
.lm-joga-hero-media img,.lm-joga-category-image img{width:100%;height:100%;min-height:460px;object-fit:cover;display:block}
.lm-joga-image-placeholder{min-height:460px;display:grid;place-items:center;padding:34px;text-align:center;color:var(--accent-dark);font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.68)}
.lm-joga-seo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,38px);margin-bottom:clamp(80px,8vw,130px)}
.lm-joga-seo-grid article{padding:clamp(26px,3vw,42px);border-radius:30px;border:1px solid rgba(113,34,137,.12);background:rgba(255,255,255,.72);box-shadow:0 18px 48px rgba(78,15,88,.055)}
.lm-joga-seo-grid h2,.lm-joga-category-copy h2,.lm-joga-faq h2{font-family:var(--font-serif);font-weight:400;font-size:clamp(2rem,3.4vw,4rem);line-height:1.02;letter-spacing:-.02em;color:#111;margin:0 0 20px}
.lm-joga-seo-grid p,.lm-joga-category-copy p,.lm-joga-faq p{font-size:1rem;line-height:1.85;color:rgba(17,17,17,.72)}
.lm-joga-category-block{margin-bottom:clamp(90px,9vw,150px)}
.lm-joga-category-block.is-reverse .lm-joga-category-copy{order:2}.lm-joga-category-block.is-reverse .lm-joga-category-image{order:1}
.lm-joga-category-link{display:inline-flex;margin-top:16px;color:var(--accent-dark);font-weight:800;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}
.lm-joga-carousel-wrap{margin-top:clamp(46px,5vw,78px)}
.lm-joga-arc-shell{min-height:560px;overflow:hidden}
.lm-joga-scroller{position:relative;z-index:2;display:flex;align-items:flex-start;gap:2.2vw;overflow-x:auto;overflow-y:hidden;padding:70px 3vw 46px;scroll-snap-type:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab}
.lm-joga-scroller::-webkit-scrollbar{display:none}
.lm-joga-scroller .arc-card{flex:0 0 clamp(230px,18vw,320px);min-width:clamp(230px,18vw,320px);transform:translate3d(0,var(--offsetY,-42px),0) scale(var(--scale,.92));transform-origin:center top;transition:transform .12s linear;will-change:transform;opacity:1}
.lm-joga-scroller .product-card-image{width:100%;height:auto;aspect-ratio:1/1;display:block;position:relative;overflow:hidden;border-radius:28px}
.lm-joga-scroller .product-card-image img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;object-position:center center;display:block}
.lm-joga-scroller .best-meta{text-align:center;margin-top:1rem;min-height:92px}
.lm-joga-scroller .best-name{font-family:var(--font-serif);font-size:clamp(1.05rem,1.35vw,1.45rem);line-height:1.22;font-style:italic;color:rgba(17,17,17,.72);margin-bottom:.55rem}
.lm-joga-scroller .arc-card.is-current .best-name{color:#fff;background:rgba(162,97,183,.58);display:inline-block;padding:.12em .18em}
.lm-joga-scroller .best-price{font-size:.86rem;line-height:1.3;color:rgba(17,17,17,.58)}
.lm-joga-sale-badge{position:absolute;top:14px;right:14px;z-index:3;min-width:58px;height:58px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#e01f3d;color:#fff;font-weight:900;box-shadow:0 12px 28px rgba(224,31,61,.22)}
.lm-joga-faq{width:min(980px,100%);margin:0 auto;padding-top:40px;border-top:1px solid rgba(113,34,137,.12)}
.lm-joga-faq details{border-bottom:1px solid rgba(113,34,137,.12);padding:20px 0}.lm-joga-faq summary{cursor:pointer;font-weight:800;color:#111}
@media(max-width:1100px){.lm-joga-hero,.lm-joga-category-editorial,.lm-joga-seo-grid{grid-template-columns:1fr}.lm-joga-category-block.is-reverse .lm-joga-category-copy,.lm-joga-category-block.is-reverse .lm-joga-category-image{order:initial}}
@media(max-width:640px){.lm-joga-shell{width:calc(100vw - 32px);padding:42px 0 78px}.lm-joga-hero-media,.lm-joga-category-image,.lm-joga-hero-media img,.lm-joga-category-image img,.lm-joga-image-placeholder{min-height:310px}.lm-joga-scroller .arc-card{flex:0 0 78vw;min-width:78vw}}

/* ===== Joga landing v2 refinements ===== */
.lm-joga-shell{
  width: min(1640px, calc(100vw - 96px)) !important;
  max-width: 1640px !important;
}
.lm-joga-cta.btn,
.lm-joga-cta{
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 64px !important;
  padding: 0 44px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg,#4a1768 0%,#612183 38%,#7a39a4 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14),0 8px 22px rgba(111,44,143,.16) !important;
  font-family: var(--font-sans) !important;
  font-size: .9rem !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}
.lm-joga-cta::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.08) 22%,rgba(255,255,255,.22) 34%,rgba(255,255,255,.05) 48%,rgba(255,255,255,0) 62%) !important;
  opacity:.55 !important;
}
.lm-joga-cta::after{
  content:"" !important;
  position:absolute !important;
  top:-12% !important;
  left:-38% !important;
  width:32% !important;
  height:124% !important;
  background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.1) 20%,rgba(255,255,255,.5) 48%,rgba(255,255,255,.14) 72%,rgba(255,255,255,0) 100%) !important;
  transform:skewX(-22deg) !important;
}
@media (hover:hover){
  .lm-joga-cta:hover::after{animation:lmButtonShine 1.05s ease forwards !important;}
}
.lm-joga-seo-grid h2,
.lm-joga-category-copy h2,
.lm-joga-faq h2{
  font-size: clamp(1.75rem, 2.55vw, 3.15rem) !important;
  line-height: 1.08 !important;
}
.lm-joga-seo-grid article{padding:clamp(24px,2.4vw,38px) !important;}
.lm-joga-scroller .arc-card{
  flex: 0 0 clamp(190px, 15.2vw, 285px) !important;
  min-width: clamp(190px, 15.2vw, 285px) !important;
}
@media (min-width: 1180px){
  .lm-joga-scroller .arc-card{
    flex-basis: calc((100% - 8.8vw) / 5) !important;
    min-width: calc((100% - 8.8vw) / 5) !important;
    max-width: calc((100% - 8.8vw) / 5) !important;
  }
}
@media (max-width: 768px){
  .lm-joga-shell{width:calc(100vw - 32px) !important;}
}


/* ===== Joga FAQ: 2-column layout ===== */
.lm-joga-faq{
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding-top: 46px !important;
  border-top: 1px solid rgba(113,34,137,.12) !important;
}

.lm-joga-faq .lm-product-kicker,
.lm-joga-faq h2{
  max-width: 980px !important;
}

.lm-joga-faq h2{
  margin-bottom: 56px !important;
  font-size: clamp(1.75rem, 2.55vw, 3.15rem) !important;
  line-height: 1.08 !important;
}

.lm-joga-faq-grid{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 48px !important;
  align-items: start !important;
}

.lm-joga-faq-item{
  border-top: 1px solid rgba(80,44,100,.12) !important;
  border-bottom: 0 !important;
  padding: 22px 0 !important;
}

.lm-joga-faq-item:nth-last-child(-n+2){
  border-bottom: 1px solid rgba(80,44,100,.12) !important;
}

.lm-joga-faq-item summary{
  list-style: none !important;
  cursor: pointer !important;
  font-size: clamp(1.02rem, 1.25vw, 1.32rem) !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  color: #161616 !important;
  position: relative !important;
  padding-left: 24px !important;
}

.lm-joga-faq-item summary::-webkit-details-marker{
  display: none !important;
}

.lm-joga-faq-item summary::before{
  content: "▸" !important;
  position: absolute !important;
  left: 0 !important;
  top: .02em !important;
  color: #111 !important;
  transition: transform .2s ease !important;
}

.lm-joga-faq-item[open] summary::before{
  transform: rotate(90deg) !important;
}

.lm-joga-faq-answer{
  padding: 18px 0 0 24px !important;
}

.lm-joga-faq-answer p{
  font-size: 1rem !important;
  line-height: 1.8 !important;
  color: rgba(17,17,17,.72) !important;
  margin: 0 !important;
}

@media (max-width: 980px){
  .lm-joga-faq-grid{
    grid-template-columns: 1fr !important;
  }

  .lm-joga-faq-item:nth-last-child(-n+2){
    border-bottom: 0 !important;
  }

  .lm-joga-faq-item:last-child{
    border-bottom: 1px solid rgba(80,44,100,.12) !important;
  }
}


/* ===== Variable product selected price fix ===== */
.lm-selected-variation-price {
  display: none;
  margin: 24px 0 28px;
  font-family: var(--font-sans);
  font-size: clamp(1.9rem, 3vw, 3rem);
  line-height: 1.05;
  font-weight: 900;
  color: var(--accent-dark);
}

.lm-selected-variation-price.is-visible {
  display: block;
}

.lm-selected-variation-price del {
  opacity: .42;
  font-size: .62em;
  margin-right: .35em;
}

.lm-selected-variation-price ins {
  text-decoration: none;
  color: var(--accent-dark);
}


/* ===== SKYADS fixes 2026-05-03: joga spacing + left mandala ===== */
.lm-joga-page::before{
  background-image:url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-position:left center !important;
  background-size:auto 100vh !important;
}
.lm-joga-carousel-wrap{
  margin-top:clamp(18px,2.2vw,34px) !important;
  margin-bottom:clamp(18px,2.5vw,42px) !important;
}
.lm-joga-arc-shell{
  min-height:clamp(360px,36vw,500px) !important;
}
.lm-joga-scroller{
  padding-top:clamp(34px,4vw,54px) !important;
  padding-bottom:clamp(18px,2.2vw,28px) !important;
}
.lm-joga-scroller .best-meta{
  min-height:0 !important;
}
.lm-joga-category-block{
  margin-bottom:clamp(48px,5.5vw,88px) !important;
}
@media (max-width: 768px){
  .lm-joga-page::before{
    background-size:auto 88vh !important;
    opacity:.18 !important;
  }
  .lm-joga-carousel-wrap{
    margin-top:18px !important;
    margin-bottom:24px !important;
  }
  .lm-joga-arc-shell{
    min-height:380px !important;
  }
  .lm-joga-scroller{
    padding-top:30px !important;
    padding-bottom:18px !important;
  }
  .lm-joga-category-block{
    margin-bottom:54px !important;
  }
}

/* Wishlist button on Joga/Medytacja carousel product cards */
.lm-joga-card-media{position:relative;width:100%;}
.lm-joga-card-media .product-card-image{width:100%;}
.lm-joga-card-wishlist{position:absolute;top:14px;left:14px;z-index:6;}
.lm-joga-card-wishlist .lm-wishlist-button{width:44px;height:44px;}
@media(max-width:640px){.lm-joga-card-wishlist{top:12px;left:12px}.lm-joga-card-wishlist .lm-wishlist-button{width:40px;height:40px}}

/* ===== v304 meditation page performance ===== */
.lm-medytacja-page .lm-joga-category-block,
.lm-medytacja-page .lm-joga-faq,
.lm-lifestyle-page .lm-joga-category-block,
.lm-lifestyle-page .lm-joga-faq {
  content-visibility: auto;
  contain-intrinsic-size: 1px 900px;
}
.lm-medytacja-page .lm-joga-card-media img,
.lm-medytacja-page .product-card-image img,
.lm-lifestyle-page .lm-joga-card-media img,
.lm-lifestyle-page .product-card-image img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

/* === Global performance: render below-the-fold blocks on demand === */
.lm-archive-description-full,
.lm-joga-seo-grid,
.lm-joga-category-block,
.lm-joga-faq,
.lm-about-home-row,
.lm-about-home-final,
.lm-blog-single-body,
.lm-product-related,
.lm-footer-shell {
  content-visibility: auto;
  contain-intrinsic-size: auto 620px;
}

/* ===== v305 category description full-width restore =====
   The category description sits inside .lm-archive-shell, so after the
   performance pass it was visually constrained to the shop container.
   Break only this block out to the viewport while keeping readable padding. */
.tax-product_cat .lm-archive-description-full {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 56px max(20px, calc((100vw - 1400px) / 2 + 20px)) 76px !important;
  box-sizing: border-box !important;
  content-visibility: visible !important;
  contain: none !important;
}
.tax-product_cat .lm-archive-description-full .lm-section-heading,
.tax-product_cat .lm-archive-description-full .lm-description-content {
  width: 100% !important;
  max-width: none !important;
}
.tax-product_cat .lm-archive-description-full::after {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  margin-left: 0 !important;
}
@media (max-width: 768px) {
  .tax-product_cat .lm-archive-description-full {
    padding: 42px 20px 58px !important;
  }
}


/* ===== SKYADS fix 2026-05-14: category products use same left mandala as joga/medytacja ===== */
.tax-product_cat .lm-category-products-mandala-zone::before {
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .28 !important;
}

@media (max-width: 1024px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    background-size: auto 92svh !important;
    opacity: .24 !important;
  }
}

@media (max-width: 768px) {
  .tax-product_cat .lm-category-products-mandala-zone::before {
    background-size: auto 78svh !important;
    opacity: .18 !important;
  }
}


/* ===== SKYADS fix 2026-05-14: restore WooCommerce My Account layout =====
   The decorative global mandala pseudo element on account pages could behave like
   a real sticky block inside <main> and break the WooCommerce account layout.
   Keep category/Joga/Medytacja mandalas intact, but isolate account pages. */
body.woocommerce-account main,
body.woocommerce-account .site-main {
  overflow: visible !important;
  isolation: auto !important;
}

body.woocommerce-account main::before,
body.woocommerce-account .site-main::before {
  content: none !important;
  display: none !important;
}

body.woocommerce-account .woocommerce {
  position: relative !important;
  z-index: 2 !important;
  width: min(1180px, calc(100% - 40px)) !important;
  max-width: 1180px !important;
  margin: clamp(34px, 5vw, 70px) auto clamp(64px, 7vw, 110px) !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
  display: grid !important;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) !important;
  gap: clamp(22px, 3vw, 42px) !important;
  align-items: start !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
  position: sticky !important;
  top: 104px !important;
  align-self: start !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 14px !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.82) !important;
  border: 1px solid rgba(113,34,137,.12) !important;
  box-shadow: 0 18px 46px rgba(80,31,95,.08) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: flex !important;
  align-items: center !important;
  min-height: 46px !important;
  padding: 12px 16px !important;
  border-radius: 999px !important;
  color: #211526 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  letter-spacing: .01em !important;
  transition: background .2s ease, color .2s ease, transform .2s ease !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: rgba(113,34,137,.10) !important;
  color: var(--accent-dark) !important;
  transform: translateX(2px) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register {
  min-width: 0 !important;
  padding: clamp(22px, 3vw, 38px) !important;
  border-radius: 32px !important;
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(113,34,137,.12) !important;
  box-shadow: 0 22px 58px rgba(80,31,95,.08) !important;
}

body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register {
  max-width: 620px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.woocommerce-account .woocommerce form .form-row,
body.woocommerce-account .woocommerce form p {
  max-width: 100% !important;
}

body.woocommerce-account .woocommerce input.input-text,
body.woocommerce-account .woocommerce textarea,
body.woocommerce-account .woocommerce select {
  width: 100% !important;
  box-sizing: border-box !important;
}

body.woocommerce-account .woocommerce table.shop_table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  border-radius: 24px !important;
}

@media (max-width: 900px) {
  body.woocommerce-account .woocommerce {
    width: min(100% - 28px, 760px) !important;
    margin-top: 28px !important;
  }

  body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
    display: block !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation {
    position: relative !important;
    top: auto !important;
    margin-bottom: 20px !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    padding: 20px !important;
    scroll-snap-type: x proximity !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li {
    flex: 0 0 auto !important;
    scroll-snap-align: start !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation a {
    min-height: 42px !important;
    padding: 10px 14px !important;
    white-space: nowrap !important;
    font-size: .92rem !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content,
  body.woocommerce-account .woocommerce-form-login,
  body.woocommerce-account .woocommerce-form-register {
    padding: 20px !important;
    border-radius: 24px !important;
  }
}


/* ===== SKYADS fix 2026-05-14: My Account content left, menu right ===== */
body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 300px) !important;
  gap: clamp(22px, 3vw, 42px) !important;
  align-items: start !important;
}

body.woocommerce-account .woocommerce-MyAccount-content {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: 300px !important;
  justify-self: end !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  width: 100% !important;
}

@media (max-width: 900px) {
  body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
    display: flex !important;
    flex-direction: column !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content {
    order: 1 !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation {
    order: 2 !important;
    grid-column: auto !important;
    grid-row: auto !important;
    max-width: none !important;
    justify-self: stretch !important;
    margin-top: 20px !important;
    margin-bottom: 0 !important;
  }
}

/* ===== SKYADS fix 2026-05-14: sticky mandala background on My Account ===== */
body.woocommerce-account {
  position: relative !important;
  isolation: isolate !important;
}

body.woocommerce-account::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 auto 0 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .24 !important;
}

body.woocommerce-account .lm-site-header,
body.woocommerce-account .site-header,
body.woocommerce-account main,
body.woocommerce-account .site-main,
body.woocommerce-account .woocommerce {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 1024px) {
  body.woocommerce-account::before {
    background-size: auto 92svh !important;
    opacity: .20 !important;
  }
}

@media (max-width: 768px) {
  body.woocommerce-account::before {
    background-size: auto 78svh !important;
    opacity: .16 !important;
  }
}

/* ===== SKYADS final fix 2026-05-14: My Account fixed columns - content left, menu right ===== */
body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation),
body.woocommerce-account .woocommerce-account-wrapper,
body.woocommerce-account .woocommerce-MyAccount-navigation + .woocommerce-MyAccount-content {
  box-sizing: border-box !important;
}

body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: clamp(22px, 3vw, 42px) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content {
  order: 1 !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  float: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
  order: 2 !important;
  flex: 0 0 clamp(260px, 24vw, 330px) !important;
  width: clamp(260px, 24vw, 330px) !important;
  max-width: 330px !important;
  float: none !important;
  margin-left: auto !important;
  margin-right: 0 !important;
}

@media (min-width: 901px) {
  body.woocommerce-account .woocommerce-MyAccount-navigation {
    position: sticky !important;
    top: 104px !important;
  }
}

@media (max-width: 900px) {
  body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
    display: flex !important;
    flex-direction: column !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content,
  body.woocommerce-account .woocommerce-MyAccount-navigation {
    order: initial !important;
    flex: 0 1 auto !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content { order: 1 !important; }
  body.woocommerce-account .woocommerce-MyAccount-navigation { order: 2 !important; }
}



/* === SKYADS v7 account layout fix: menu left, content right, header-width aligned === */
body.woocommerce-account.logged-in .site-main > .woocommerce,
body.woocommerce-account.logged-in .entry-content > .woocommerce,
body.woocommerce-account.logged-in main .woocommerce {
  display: grid !important;
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr) !important;
  grid-template-areas: "account-nav account-content" !important;
  gap: clamp(24px, 3vw, 44px) !important;
  align-items: start !important;
  width: min(100% - 48px, 1440px) !important;
  max-width: 1440px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
  grid-area: account-nav !important;
  grid-column: 1 !important;
  order: 1 !important;
  float: none !important;
  width: 100% !important;
  max-width: 300px !important;
  min-width: 0 !important;
  margin: 0 !important;
  justify-self: start !important;
  align-self: start !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
  grid-area: account-content !important;
  grid-column: 2 !important;
  order: 2 !important;
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  justify-self: stretch !important;
  align-self: start !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul {
  width: 100% !important;
  box-sizing: border-box !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content > * {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 991px) {
  body.woocommerce-account.logged-in .site-main > .woocommerce,
  body.woocommerce-account.logged-in .entry-content > .woocommerce,
  body.woocommerce-account.logged-in main .woocommerce {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "account-nav"
      "account-content" !important;
    width: min(100% - 28px, 720px) !important;
    gap: 18px !important;
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation,
  body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
    grid-column: auto !important;
    max-width: 100% !important;
  }
}

/* === SKYADS v21 wishlist active heart color fix ===
   Added products in wishlist keep a white circular button, but the heart itself
   must stay dark violet instead of turning white. */
.lm-wishlist-button.is-active,
.lm-wishlist-button[aria-pressed="true"],
.lm-wishlist-button[data-in-wishlist="1"] {
  background: #fff !important;
  border-color: #712289 !important;
  color: #4b145f !important;
}

.lm-wishlist-button.is-active .lm-wishlist-icon,
.lm-wishlist-button[aria-pressed="true"] .lm-wishlist-icon,
.lm-wishlist-button[data-in-wishlist="1"] .lm-wishlist-icon,
.lm-wishlist-button.is-active .lm-heart-icon-svg,
.lm-wishlist-button[aria-pressed="true"] .lm-heart-icon-svg,
.lm-wishlist-button[data-in-wishlist="1"] .lm-heart-icon-svg,
.lm-wishlist-button.is-active svg,
.lm-wishlist-button[aria-pressed="true"] svg,
.lm-wishlist-button[data-in-wishlist="1"] svg {
  color: #4b145f !important;
}

.lm-wishlist-button.is-active .lm-heart-icon-svg path,
.lm-wishlist-button[aria-pressed="true"] .lm-heart-icon-svg path,
.lm-wishlist-button[data-in-wishlist="1"] .lm-heart-icon-svg path,
.lm-wishlist-button.is-active svg path,
.lm-wishlist-button[aria-pressed="true"] svg path,
.lm-wishlist-button[data-in-wishlist="1"] svg path {
  stroke: #4b145f !important;
  fill: none !important;
}

.lm-wishlist-button.is-active::after,
.lm-wishlist-button[aria-pressed="true"]::after,
.lm-wishlist-button[data-in-wishlist="1"]::after,
.lm-wishlist-button.is-active::before,
.lm-wishlist-button[aria-pressed="true"]::before,
.lm-wishlist-button[data-in-wishlist="1"]::before {
  display: none !important;
  content: none !important;
}

/* === SKYADS v22 wishlist account grid: 3 columns desktop ===
   Products in My Account > Lista życzeń must be displayed side by side,
   not one below another. */
body.woocommerce-account.logged-in .woocommerce-MyAccount-content .lm-account-wishlist {
  width: 100% !important;
  max-width: 100% !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content .lm-account-wishlist-grid,
body.woocommerce-account .lm-account-wishlist-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 28px) !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content .lm-account-wishlist-card,
body.woocommerce-account .lm-account-wishlist-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 18px 46px rgba(77, 24, 93, .08) !important;
  overflow: hidden !important;
}

body.woocommerce-account .lm-account-wishlist-card .lm-wishlist-button {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  z-index: 5 !important;
}

body.woocommerce-account .lm-account-wishlist-thumb {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1.12 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
}

body.woocommerce-account .lm-account-wishlist-thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 0 !important;
}

body.woocommerce-account .lm-account-wishlist-card h3,
body.woocommerce-account .lm-account-wishlist-price,
body.woocommerce-account .lm-account-wishlist-actions {
  padding-left: 18px !important;
  padding-right: 18px !important;
}

body.woocommerce-account .lm-account-wishlist-card h3 {
  margin: 16px 0 8px !important;
  font-family: var(--lm-font-heading, inherit) !important;
  font-size: clamp(19px, 1.45vw, 24px) !important;
  line-height: 1.15 !important;
}

body.woocommerce-account .lm-account-wishlist-price {
  margin: 0 0 14px !important;
  font-weight: 700 !important;
}

body.woocommerce-account .lm-account-wishlist-actions {
  margin-top: auto !important;
  padding-bottom: 18px !important;
}

body.woocommerce-account .lm-account-wishlist-actions .button {
  width: 100% !important;
  min-width: 0 !important;
  text-align: center !important;
}

@media (max-width: 1180px) {
  body.woocommerce-account.logged-in .woocommerce-MyAccount-content .lm-account-wishlist-grid,
  body.woocommerce-account .lm-account-wishlist-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  body.woocommerce-account.logged-in .woocommerce-MyAccount-content .lm-account-wishlist-grid,
  body.woocommerce-account .lm-account-wishlist-grid {
    grid-template-columns: 1fr !important;
  }
}

/* v23: continuous 360 product carousel loop on all product carousels */
.bestsellers-scroller.lm-looping-product-carousel,
.lm-joga-scroller.lm-looping-product-carousel,
.single-product .lm-related-scroller.lm-looping-product-carousel {
  scroll-snap-type: none !important;
  scroll-behavior: auto !important;
  overscroll-behavior-inline: contain;
}
.lm-looping-product-carousel .lm-carousel-clone {
  pointer-events: auto;
}


/* === SKYADS v24 wishlist filled-heart + instant feedback ===
   When a product is added, the heart fills violet immediately and pulses so
   the customer gets a clear visual confirmation. */
.lm-wishlist-button.is-active,
.lm-wishlist-button[aria-pressed="true"],
.lm-wishlist-button[data-in-wishlist="1"] {
  background: #fff !important;
  border-color: #712289 !important;
  color: #712289 !important;
  box-shadow: 0 10px 26px rgba(113, 34, 137, .18) !important;
}

.lm-wishlist-button.is-active .lm-heart-icon-svg,
.lm-wishlist-button[aria-pressed="true"] .lm-heart-icon-svg,
.lm-wishlist-button[data-in-wishlist="1"] .lm-heart-icon-svg,
.lm-wishlist-button.is-active svg,
.lm-wishlist-button[aria-pressed="true"] svg,
.lm-wishlist-button[data-in-wishlist="1"] svg {
  color: #712289 !important;
}

.lm-wishlist-button.is-active .lm-heart-icon-svg path,
.lm-wishlist-button[aria-pressed="true"] .lm-heart-icon-svg path,
.lm-wishlist-button[data-in-wishlist="1"] .lm-heart-icon-svg path,
.lm-wishlist-button.is-active svg path,
.lm-wishlist-button[aria-pressed="true"] svg path,
.lm-wishlist-button[data-in-wishlist="1"] svg path {
  fill: #712289 !important;
  stroke: #712289 !important;
}

.lm-wishlist-button.lm-wishlist-feedback-added {
  animation: lmWishlistAddedPulse .72s ease both !important;
}

.lm-wishlist-button.lm-wishlist-feedback-removed {
  animation: lmWishlistRemovedPulse .42s ease both !important;
}

@keyframes lmWishlistAddedPulse {
  0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(113, 34, 137, .34); }
  42% { transform: scale(1.13); box-shadow: 0 0 0 13px rgba(113, 34, 137, .12); }
  100% { transform: scale(1); box-shadow: 0 10px 26px rgba(113, 34, 137, .18); }
}

@keyframes lmWishlistRemovedPulse {
  0% { transform: scale(1); }
  45% { transform: scale(.92); }
  100% { transform: scale(1); }
}

/* === SKYADS v25: restore sticky/fixed mandala background ===
   The account/wishlist layout fixes must not hide the decorative mandala.
   Keep it fixed to the viewport and place all page content above it. */
body.woocommerce-account,
body.woocommerce-cart,
body.woocommerce-checkout,
body[class*="wishlist"],
body.page-lista-zyczen,
body.page-wishlist {
  position: relative !important;
  isolation: isolate !important;
}

body.woocommerce-account::before,
body.woocommerce-cart::before,
body.woocommerce-checkout::before,
body[class*="wishlist"]::before,
body.page-lista-zyczen::before,
body.page-wishlist::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  background-attachment: fixed !important;
  opacity: .24 !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

body.woocommerce-account .lm-topbar,
body.woocommerce-account .lm-header-utility-bar,
body.woocommerce-account .lm-site-header,
body.woocommerce-account main,
body.woocommerce-account .site-main,
body.woocommerce-account .woocommerce,
body.woocommerce-cart .lm-topbar,
body.woocommerce-cart .lm-header-utility-bar,
body.woocommerce-cart .lm-site-header,
body.woocommerce-cart main,
body.woocommerce-cart .site-main,
body.woocommerce-checkout .lm-topbar,
body.woocommerce-checkout .lm-header-utility-bar,
body.woocommerce-checkout .lm-site-header,
body.woocommerce-checkout main,
body.woocommerce-checkout .site-main,
body[class*="wishlist"] .lm-topbar,
body[class*="wishlist"] .lm-header-utility-bar,
body[class*="wishlist"] .lm-site-header,
body[class*="wishlist"] main,
body[class*="wishlist"] .site-main,
body.page-lista-zyczen main,
body.page-lista-zyczen .site-main,
body.page-wishlist main,
body.page-wishlist .site-main {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 1024px) {
  body.woocommerce-account::before,
  body.woocommerce-cart::before,
  body.woocommerce-checkout::before,
  body[class*="wishlist"]::before,
  body.page-lista-zyczen::before,
  body.page-wishlist::before {
    background-size: auto 92svh !important;
    opacity: .20 !important;
  }
}

@media (max-width: 768px) {
  body.woocommerce-account::before,
  body.woocommerce-cart::before,
  body.woocommerce-checkout::before,
  body[class*="wishlist"]::before,
  body.page-lista-zyczen::before,
  body.page-wishlist::before {
    background-size: auto 78svh !important;
    opacity: .16 !important;
  }
}

/* === SKYADS v26 seamless infinite product carousels ===
   Prevent visible snapping/jumping during the automatic loop. */
.bestsellers-scroller.lm-looping-product-carousel,
.lm-joga-scroller.lm-looping-product-carousel,
.lm-related-scroller.lm-looping-product-carousel {
  scroll-snap-type: none !important;
  scroll-behavior: auto !important;
  overscroll-behavior-inline: contain !important;
  -webkit-overflow-scrolling: auto !important;
}
.lm-looping-product-carousel .arc-card {
  scroll-snap-align: none !important;
}

/* === SKYADS v29 manual product carousels ===
   Return product carousels to user-controlled scrolling: no autoplay/no loop.
   Product selection is shown by a violet underline on hover/focus/click.
   Short carousels with fewer than 4 products are centered on desktop. */
.bestsellers-scroller.lm-manual-product-carousel,
.lm-joga-scroller.lm-manual-product-carousel,
.lm-related-scroller.lm-manual-product-carousel {
  scroll-snap-type: x proximity !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior-inline: contain !important;
  cursor: grab !important;
}

.bestsellers-scroller.lm-manual-product-carousel.lm-carousel-centered,
.lm-joga-scroller.lm-manual-product-carousel.lm-carousel-centered,
.lm-related-scroller.lm-manual-product-carousel.lm-carousel-centered,
.single-product .lm-related-scroller.lm-manual-product-carousel.lm-carousel-centered {
  justify-content: center !important;
}

.bestsellers-scroller.lm-manual-product-carousel .arc-card,
.lm-joga-scroller.lm-manual-product-carousel .arc-card,
.lm-related-scroller.lm-manual-product-carousel .arc-card {
  scroll-snap-align: center !important;
}

.bestsellers-scroller.lm-manual-product-carousel .arc-card.is-current .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card.is-current .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card.is-current .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card.is-current .best-name {
  color: rgba(17,17,17,.72) !important;
  background: transparent !important;
  padding: 0 !important;
}

.bestsellers-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
.bestsellers-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
.bestsellers-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name {
  color: #712289 !important;
  background: transparent !important;
  text-decoration-line: underline !important;
  text-decoration-color: #b77acb !important;
  text-decoration-thickness: 3px !important;
  text-underline-offset: .18em !important;
  padding: 0 !important;
}

.bestsellers-scroller.lm-manual-product-carousel .arc-card:hover .product-card-image,
.bestsellers-scroller.lm-manual-product-carousel .arc-card:focus-within .product-card-image,
.bestsellers-scroller.lm-manual-product-carousel .arc-card.is-selected .product-card-image,
.lm-joga-scroller.lm-manual-product-carousel .arc-card:hover .product-card-image,
.lm-joga-scroller.lm-manual-product-carousel .arc-card:focus-within .product-card-image,
.lm-joga-scroller.lm-manual-product-carousel .arc-card.is-selected .product-card-image,
.lm-related-scroller.lm-manual-product-carousel .arc-card:hover .product-card-image,
.lm-related-scroller.lm-manual-product-carousel .arc-card:focus-within .product-card-image,
.lm-related-scroller.lm-manual-product-carousel .arc-card.is-selected .product-card-image {
  border-color: rgba(113,34,137,.26) !important;
  box-shadow: 0 26px 44px rgba(78,15,88,.10), inset 0 1px 0 rgba(255,255,255,.52) !important;
}

@media (max-width: 900px) {
  .bestsellers-scroller.lm-manual-product-carousel.lm-carousel-centered,
  .lm-joga-scroller.lm-manual-product-carousel.lm-carousel-centered,
  .lm-related-scroller.lm-manual-product-carousel.lm-carousel-centered,
  .single-product .lm-related-scroller.lm-manual-product-carousel.lm-carousel-centered {
    justify-content: flex-start !important;
  }
}

/* === SKYADS v30: remove mandala from checkout order summary area ===
   On checkout the decorative mandala was visible behind the order summary on the right.
   Hide checkout-only mandala layers while keeping account, wishlist and cart mandalas intact. */
body.woocommerce-checkout::before,
body.woocommerce-checkout .site-main::before,
body.woocommerce-checkout main::before,
body.woocommerce-checkout .lm-checkout-shell::before,
body.woocommerce-checkout .woocommerce-checkout-review-order::before,
body.woocommerce-checkout #order_review::before {
  content: none !important;
  display: none !important;
  background-image: none !important;
  opacity: 0 !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout .lm-checkout-sidebar,
body.woocommerce-checkout .woocommerce-checkout-payment {
  position: relative !important;
  z-index: 2 !important;
  background-image: none !important;
}

/* === SKYADS v31: carousel product title hover removed ===
   Product titles in manual carousels remain unchanged on hover/focus/selection. */
.bestsellers-scroller.lm-manual-product-carousel .arc-card .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card .best-name,
.bestsellers-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
.bestsellers-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
.bestsellers-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
.bestsellers-scroller.lm-manual-product-carousel .arc-card.is-current:hover .best-name,
.bestsellers-scroller.lm-manual-product-carousel .arc-card.is-current:focus-within .best-name,
.bestsellers-scroller.lm-manual-product-carousel .arc-card.is-current.is-selected .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card.is-current:hover .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card.is-current:focus-within .best-name,
.lm-joga-scroller.lm-manual-product-carousel .arc-card.is-current.is-selected .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card.is-current:hover .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card.is-current:focus-within .best-name,
.lm-related-scroller.lm-manual-product-carousel .arc-card.is-current.is-selected .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card.is-current:hover .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card.is-current:focus-within .best-name,
.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card.is-current.is-selected .best-name {
  color: #4A454B !important;
  background: none !important;
  background-image: none !important;
  text-decoration: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* ===== v34 stable sticky header + safer dropdown layering ===== */
:root {
  --lm-header-fixed-width: min(1780px, calc(100vw - 24px));
}

.lm-topbar,
.lm-topbar--slider,
.lm-topbar--marquee {
  z-index: 3000 !important;
}

.lm-header-utility-bar {
  z-index: 2990 !important;
}

.lm-site-header {
  width: var(--lm-header-fixed-width) !important;
  max-width: var(--lm-header-fixed-width) !important;
  min-width: 0 !important;
  left: auto !important;
  right: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  z-index: 3100 !important;
  overflow: visible !important;
  will-change: transform;
}

.lm-site-header__inner {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.lm-site-header.is-hidden-on-scroll {
  transform: translate3d(0, calc(-100% - 22px), 0) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.lm-site-header.is-scrolled-up,
.lm-site-header:not(.is-hidden-on-scroll) {
  transform: translate3d(0, 0, 0) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.lm-site-header,
.lm-site-header * {
  backface-visibility: hidden;
}

.lm-nav-panel,
.lm-main-nav,
.lm-menu,
.lm-menu > li {
  overflow: visible !important;
}

.lm-menu .sub-menu {
  z-index: 3200 !important;
  pointer-events: none;
}

.lm-menu li:hover > .sub-menu,
.lm-menu li:focus-within > .sub-menu,
.lm-menu li.is-hover-open > .sub-menu,
.lm-menu li.is-submenu-open > .sub-menu {
  pointer-events: auto;
}

.lm-menu > li:not(:hover):not(:focus-within):not(.is-hover-open):not(.is-submenu-open) > .sub-menu {
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(8px) !important;
}

.lm-menu > li.is-hover-open > .sub-menu,
.lm-menu > li:hover > .sub-menu,
.lm-menu > li:focus-within > .sub-menu {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

@media (max-width: 980px) {
  :root {
    --lm-header-fixed-width: calc(100vw - 16px);
  }

  .lm-site-header {
    width: var(--lm-header-fixed-width) !important;
    max-width: var(--lm-header-fixed-width) !important;
    z-index: 3100 !important;
  }

  .lm-site-header.is-hidden-on-scroll.is-menu-open {
    transform: translate3d(0, 0, 0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .lm-nav-panel {
    z-index: 3095 !important;
  }
}

/* === SKYADS v35: sticky mandalas restored and normalized ===
   Joga / Medytacja / Lifestyle: fixed decorative mandala stays in viewport.
   Cart / Checkout / Wishlist / Account: fixed left mandala is restored.
   Product category archives: left mandala for product grid, right mandala for category description. */

/* Landing pages: Joga, Medytacja, Lifestyle */
.lm-joga-page,
.lm-medytacja-page,
.lm-lifestyle-page {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
  background: transparent !important;
}

.lm-joga-page::before,
.lm-medytacja-page::before,
.lm-lifestyle-page::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .22 !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

.lm-joga-page > *,
.lm-medytacja-page > *,
.lm-lifestyle-page > *,
.lm-joga-shell {
  position: relative !important;
  z-index: 1 !important;
}

/* WooCommerce functional pages: keep the mandala sticky/fixed to the viewport. */
body.woocommerce-account::before,
body.woocommerce-cart::before,
body.woocommerce-checkout::before,
body[class*="wishlist"]::before,
body.page-lista-zyczen::before,
body.page-wishlist::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  background-attachment: fixed !important;
  opacity: .24 !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

body.woocommerce-checkout .site-main::before,
body.woocommerce-checkout main::before,
body.woocommerce-checkout .lm-checkout-shell::before,
body.woocommerce-checkout .woocommerce-checkout-review-order::before,
body.woocommerce-checkout #order_review::before {
  content: none !important;
  display: none !important;
  background-image: none !important;
}

body.woocommerce-account .lm-topbar,
body.woocommerce-account .lm-header-utility-bar,
body.woocommerce-account .lm-site-header,
body.woocommerce-account main,
body.woocommerce-account .site-main,
body.woocommerce-account .woocommerce,
body.woocommerce-cart .lm-topbar,
body.woocommerce-cart .lm-header-utility-bar,
body.woocommerce-cart .lm-site-header,
body.woocommerce-cart main,
body.woocommerce-cart .site-main,
body.woocommerce-checkout .lm-topbar,
body.woocommerce-checkout .lm-header-utility-bar,
body.woocommerce-checkout .lm-site-header,
body.woocommerce-checkout main,
body.woocommerce-checkout .site-main,
body[class*="wishlist"] .lm-topbar,
body[class*="wishlist"] .lm-header-utility-bar,
body[class*="wishlist"] .lm-site-header,
body[class*="wishlist"] main,
body[class*="wishlist"] .site-main,
body.page-lista-zyczen main,
body.page-lista-zyczen .site-main,
body.page-wishlist main,
body.page-wishlist .site-main {
  position: relative !important;
  z-index: 1 !important;
}

/* Category product grid: left sticky mandala only in the products section. */
.tax-product_cat .lm-category-products-mandala-zone {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
  z-index: 1 !important;
  content-visibility: visible !important;
  contain: none !important;
}

.tax-product_cat .lm-category-products-mandala-zone::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .28 !important;
}

.tax-product_cat .lm-category-products-mandala-zone > * {
  position: relative !important;
  z-index: 1 !important;
}

/* Category description: separate right sticky mandala. */
.tax-product_cat .lm-archive-description-full {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
  z-index: 3 !important;
  content-visibility: visible !important;
  contain: none !important;
}

.tax-product_cat .lm-archive-description-full::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: auto 100vh !important;
  opacity: .30 !important;
}

.tax-product_cat .lm-archive-description-full .lm-section-heading,
.tax-product_cat .lm-archive-description-full .lm-description-content {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 1024px) {
  .lm-joga-page::before,
  .lm-medytacja-page::before,
  .lm-lifestyle-page::before,
  body.woocommerce-account::before,
  body.woocommerce-cart::before,
  body.woocommerce-checkout::before,
  body[class*="wishlist"]::before,
  body.page-lista-zyczen::before,
  body.page-wishlist::before,
  .tax-product_cat .lm-category-products-mandala-zone::before,
  .tax-product_cat .lm-archive-description-full::before {
    background-size: auto 92svh !important;
    opacity: .20 !important;
  }
}

@media (max-width: 768px) {
  .lm-joga-page::before,
  .lm-medytacja-page::before,
  .lm-lifestyle-page::before,
  body.woocommerce-account::before,
  body.woocommerce-cart::before,
  body.woocommerce-checkout::before,
  body[class*="wishlist"]::before,
  body.page-lista-zyczen::before,
  body.page-wishlist::before,
  .tax-product_cat .lm-category-products-mandala-zone::before,
  .tax-product_cat .lm-archive-description-full::before {
    background-size: auto 78svh !important;
    opacity: .16 !important;
  }
}


/* === SKYADS v36: center manual product carousels also when there are exactly 4 cards ===
   Desktop carousels with 1-4 products are centered to the vertical axis; mobile still starts from the left. */
.bestsellers-scroller.lm-manual-product-carousel.lm-carousel-centered,
.lm-joga-scroller.lm-manual-product-carousel.lm-carousel-centered,
.lm-related-scroller.lm-manual-product-carousel.lm-carousel-centered,
.single-product .lm-related-scroller.lm-manual-product-carousel.lm-carousel-centered {
  justify-content: center !important;
}


/* === SKYADS v37: promotion badges on every product carousel ===
   Carousels now show the same red percentage badge used on regular product cards.
   Badge is kept in the image corner and above wishlist/hover layers. */
.bestsellers-scroller .product-card-image,
.lm-joga-scroller .product-card-image,
.lm-related-scroller .product-card-image {
  position: relative !important;
}

.bestsellers-scroller .lm-sale-discount-badge,
.bestsellers-scroller .lm-joga-sale-badge,
.lm-joga-scroller .lm-sale-discount-badge,
.lm-joga-scroller .lm-joga-sale-badge,
.lm-related-scroller .lm-sale-discount-badge,
.lm-related-scroller .lm-related-sale-badge {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  left: auto !important;
  z-index: 7 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 58px !important;
  height: 58px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: #e01f3d !important;
  color: #fff !important;
  font-family: var(--font-sans) !important;
  font-size: .95rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 12px 28px rgba(224,31,61,.22) !important;
  text-decoration: none !important;
  pointer-events: none !important;
}

@media (max-width: 640px) {
  .bestsellers-scroller .lm-sale-discount-badge,
  .bestsellers-scroller .lm-joga-sale-badge,
  .lm-joga-scroller .lm-sale-discount-badge,
  .lm-joga-scroller .lm-joga-sale-badge,
  .lm-related-scroller .lm-sale-discount-badge,
  .lm-related-scroller .lm-related-sale-badge {
    top: 12px !important;
    right: 12px !important;
    min-width: 48px !important;
    height: 48px !important;
    font-size: .82rem !important;
  }
}


/* === SKYADS v38: seamless topbar marquee + carousel card controls matching product cards === */
.lm-topbar--slider {
  overflow: hidden !important;
}

.lm-topbar__slides[data-marquee-ready="1"] {
  position: relative !important;
  width: max-content !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  will-change: transform !important;
  animation: lmTopbarSeamlessMarquee var(--lm-topbar-speed, 28s) linear infinite !important;
}

.lm-topbar__marquee-group {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

.lm-topbar__slides[data-marquee-ready="1"] .lm-topbar__slide {
  position: static !important;
  inset: auto !important;
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  min-height: 44px !important;
  padding: 0 clamp(24px, 3vw, 54px) !important;
  text-align: center !important;
}

.lm-topbar__slides[data-marquee-ready="1"] .lm-topbar__slide::after {
  content: "•" !important;
  margin-left: clamp(24px, 3vw, 54px) !important;
  opacity: .56 !important;
}

@keyframes lmTopbarSeamlessMarquee {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(var(--lm-topbar-distance, -50%), 0, 0); }
}

.bestsellers-scroller .arc-card,
.lm-joga-scroller .arc-card,
.lm-related-scroller .arc-card,
.single-product .lm-related-scroller .arc-card {
  position: relative !important;
  overflow: visible !important;
}

.arc-card .lm-carousel-card-topbar {
  top: 18px !important;
  left: 18px !important;
  right: 18px !important;
  z-index: 12 !important;
}

.arc-card .lm-carousel-card-topbar .lm-card-topbar__left:empty {
  display: block !important;
}

.arc-card .lm-carousel-card-topbar .lm-sale-discount-badge,
.arc-card .lm-carousel-card-topbar .onsale {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  margin: 0 !important;
  width: 60px !important;
  height: 60px !important;
  min-width: 60px !important;
  min-height: 60px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #d72638 !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  line-height: 1 !important;
  box-shadow: 0 12px 26px rgba(215,38,56,.20) !important;
}

.arc-card .lm-carousel-card-topbar .lm-wishlist-button {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  max-width: 56px !important;
  max-height: 56px !important;
  border-radius: 50% !important;
  border: 1.5px solid #dccae8 !important;
  background: #fff !important;
  color: #712289 !important;
  box-shadow: 0 10px 24px rgba(113,34,137,.08) !important;
}

.arc-card .lm-carousel-card-topbar .lm-wishlist-button.is-active,
.arc-card .lm-carousel-card-topbar .lm-wishlist-button[aria-pressed="true"],
.arc-card .lm-carousel-card-topbar .lm-wishlist-button[data-in-wishlist="1"] {
  background: linear-gradient(135deg,#6d2388 0%,#8f46be 52%,#7a35a6 100%) !important;
  border-color: #712289 !important;
  color: #fff !important;
}


@media (max-width: 767px) {
  .arc-card .lm-carousel-card-topbar {
    top: 16px !important;
    left: 16px !important;
    right: 16px !important;
  }
  .arc-card .lm-carousel-card-topbar .lm-sale-discount-badge,
  .arc-card .lm-carousel-card-topbar .onsale {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    font-size: 14px !important;
  }
  .arc-card .lm-carousel-card-topbar .lm-wishlist-button {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
  }
}


/* === SKYADS v40 wishlist active: fill only heart, keep circle white ===
   Active wishlist state must not paint the whole circular button violet.
   The circle stays white with a soft violet border; only the heart icon is filled violet. */
body .lm-wishlist-button.is-active,
body .lm-wishlist-button[aria-pressed="true"],
body .lm-wishlist-button[data-in-wishlist="1"],
body .arc-card .lm-wishlist-button.is-active,
body .arc-card .lm-wishlist-button[aria-pressed="true"],
body .arc-card .lm-wishlist-button[data-in-wishlist="1"],
body .lm-card-topbar__right .lm-wishlist-button.is-active,
body .lm-card-topbar__right .lm-wishlist-button[aria-pressed="true"],
body .lm-card-topbar__right .lm-wishlist-button[data-in-wishlist="1"],
body .lm-wishlist-button.is-active:hover,
body .lm-wishlist-button[aria-pressed="true"]:hover,
body .lm-wishlist-button[data-in-wishlist="1"]:hover {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  border-color: #d9b8e8 !important;
  color: #712289 !important;
  box-shadow: 0 12px 28px rgba(113, 34, 137, .12) !important;
}

body .lm-wishlist-button.is-active::before,
body .lm-wishlist-button.is-active::after,
body .lm-wishlist-button[aria-pressed="true"]::before,
body .lm-wishlist-button[aria-pressed="true"]::after,
body .lm-wishlist-button[data-in-wishlist="1"]::before,
body .lm-wishlist-button[data-in-wishlist="1"]::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .lm-wishlist-button.is-active svg,
body .lm-wishlist-button[aria-pressed="true"] svg,
body .lm-wishlist-button[data-in-wishlist="1"] svg,
body .lm-wishlist-button.is-active .lm-heart-icon-svg,
body .lm-wishlist-button[aria-pressed="true"] .lm-heart-icon-svg,
body .lm-wishlist-button[data-in-wishlist="1"] .lm-heart-icon-svg {
  color: #712289 !important;
  fill: none !important;
}

body .lm-wishlist-button.is-active svg path,
body .lm-wishlist-button[aria-pressed="true"] svg path,
body .lm-wishlist-button[data-in-wishlist="1"] svg path,
body .lm-wishlist-button.is-active .lm-heart-icon-svg path,
body .lm-wishlist-button[aria-pressed="true"] .lm-heart-icon-svg path,
body .lm-wishlist-button[data-in-wishlist="1"] .lm-heart-icon-svg path {
  fill: #712289 !important;
  stroke: #712289 !important;
}

/* === SKYADS v41 fixes: carousel wishlist, category mandalas, TrustMate white background === */
/* Carousel/card wishlist: no blue browser ring, no violet circle; active state fills only the heart. */
body .lm-wishlist-button,
body .lm-wishlist-button:focus,
body .lm-wishlist-button:focus-visible,
body .lm-wishlist-button:active,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button:focus,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button:focus-visible,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button:active {
  outline: none !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  border-color: #d9b8e8 !important;
  color: #712289 !important;
  box-shadow: 0 10px 24px rgba(113,34,137,.08) !important;
}

body .lm-wishlist-button.is-active,
body .lm-wishlist-button[aria-pressed="true"],
body .lm-wishlist-button[data-in-wishlist="1"],
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button.is-active,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button[aria-pressed="true"],
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button[data-in-wishlist="1"] {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  border-color: #d9b8e8 !important;
  color: #712289 !important;
}

body .lm-wishlist-button.is-active::before,
body .lm-wishlist-button.is-active::after,
body .lm-wishlist-button[aria-pressed="true"]::before,
body .lm-wishlist-button[aria-pressed="true"]::after,
body .lm-wishlist-button[data-in-wishlist="1"]::before,
body .lm-wishlist-button[data-in-wishlist="1"]::after,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button.is-active::before,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button.is-active::after,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button[aria-pressed="true"]::before,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button[aria-pressed="true"]::after,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button[data-in-wishlist="1"]::before,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button[data-in-wishlist="1"]::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  background-image: none !important;
}

body .lm-wishlist-button.is-active svg path,
body .lm-wishlist-button[aria-pressed="true"] svg path,
body .lm-wishlist-button[data-in-wishlist="1"] svg path,
body .lm-wishlist-button.is-active .lm-heart-icon-svg path,
body .lm-wishlist-button[aria-pressed="true"] .lm-heart-icon-svg path,
body .lm-wishlist-button[data-in-wishlist="1"] .lm-heart-icon-svg path,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button.is-active svg path,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button[aria-pressed="true"] svg path,
body .arc-card .lm-carousel-card-topbar .lm-wishlist-button[data-in-wishlist="1"] svg path {
  fill: #712289 !important;
  stroke: #712289 !important;
}

/* Remove the old purple selected-title patch in manual carousels. */
body .bestsellers-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
body .bestsellers-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
body .bestsellers-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
body .lm-joga-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
body .lm-joga-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
body .lm-joga-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
body .lm-related-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
body .lm-related-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
body .lm-related-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name,
body .single-product .lm-related-scroller.lm-manual-product-carousel .arc-card:hover .best-name,
body .single-product .lm-related-scroller.lm-manual-product-carousel .arc-card:focus-within .best-name,
body .single-product .lm-related-scroller.lm-manual-product-carousel .arc-card.is-selected .best-name {
  color: rgba(17,17,17,.72) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
  padding: 0 !important;
}

/* Category mandalas: product section has only the left mandala and it is clipped to that section. */
body.tax-product_cat .lm-category-products-mandala-zone {
  overflow: hidden !important;
  clip-path: inset(0 0 0 0) !important;
  isolation: isolate !important;
  background: transparent !important;
}
body.tax-product_cat .lm-category-products-mandala-zone::before {
  content: "" !important;
  display: block !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-position: left center !important;
  background-repeat: no-repeat !important;
  background-size: auto 100vh !important;
  opacity: .22 !important;
  z-index: -1 !important;
}

/* Category description owns the right mandala only. */
body.tax-product_cat .lm-archive-description-full {
  overflow: hidden !important;
  isolation: isolate !important;
  background: #fff !important;
}
body.tax-product_cat .lm-archive-description-full::before {
  content: "" !important;
  display: block !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-position: right center !important;
  background-repeat: no-repeat !important;
  background-size: auto 100vh !important;
  opacity: .24 !important;
}
body.tax-product_cat .lm-archive-description-full::after {
  content: none !important;
  display: none !important;
}

/* TrustMate / reviews area: force clean white background and cover any decorative mandala behind it. */
body.tax-product_cat .lm-trustmate-section,
body.tax-product_cat .lm-trustmate-shell,
body.tax-product_cat #tm-widget-chupacabra2,
body.tax-product_cat [id^="tm-widget"],
body.tax-product_cat .tm-chupacabra2,
body.tax-product_cat .tm-chupacabra2__r1,
body.tax-product_cat .tm-hydra,
body.tax-product_cat .tm-hydra__module,
body.tax-product_cat .trustmate-widget,
body.tax-product_cat [class*="trustmate"] {
  position: relative !important;
  z-index: 120 !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  isolation: isolate !important;
}
body.tax-product_cat .lm-trustmate-section::before,
body.tax-product_cat #tm-widget-chupacabra2::before,
body.tax-product_cat [id^="tm-widget"]::before {
  content: "" !important;
  position: absolute !important;
  top: -80px !important;
  bottom: -80px !important;
  left: 50% !important;
  width: 100vw !important;
  margin-left: -50vw !important;
  z-index: -1 !important;
  background: #fff !important;
  pointer-events: none !important;
}


/* === SKYADS v43: full-width header fixed correctly ===
   Full-bleed background across the viewport, with centered inner content.
   Uses margin-based full-bleed instead of translate(-50%) to avoid half-width clipping. */
:root {
  --lm-header-fixed-width: 100vw !important;
  --lm-header-inner-width: min(1780px, calc(100vw - 48px));
}

.lm-topbar,
.lm-topbar--slider,
.lm-topbar--marquee,
.lm-header-utility-bar,
.lm-site-header {
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  box-sizing: border-box !important;
  border-radius: 0 !important;
  left: auto !important;
  right: auto !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  transform: none !important;
}

.lm-site-header {
  z-index: 3100 !important;
  overflow: visible !important;
}

.lm-topbar,
.lm-topbar--slider,
.lm-topbar--marquee {
  overflow: hidden !important;
}

.lm-site-header.is-hidden-on-scroll {
  transform: translate3d(0, calc(-100% - 22px), 0) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.lm-site-header.is-hidden-on-scroll.is-menu-open,
.lm-site-header.is-scrolled-up,
.lm-site-header:not(.is-hidden-on-scroll) {
  transform: translate3d(0, 0, 0) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.lm-site-header__inner,
.lm-header-utility-bar__inner {
  width: var(--lm-header-inner-width) !important;
  max-width: var(--lm-header-inner-width) !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.lm-topbar__slides,
.lm-topbar__slides[data-marquee-ready="1"] {
  min-width: 100vw !important;
}

@media (max-width: 980px) {
  :root {
    --lm-header-inner-width: calc(100vw - 24px);
  }
}

@media (max-width: 600px) {
  body.admin-bar .lm-site-header {
    top: 46px !important;
  }
}


/* === SKYADS v44: cart/checkout left mandala only + aligned summary === */
body.woocommerce-cart,
body.woocommerce-checkout {
  position: relative !important;
  overflow-x: clip !important;
}

/* keep one decorative mandala only on the left side */
body.woocommerce-cart::before,
body.woocommerce-checkout::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  width: 50vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  background-attachment: fixed !important;
  opacity: .24 !important;
  transform: none !important;
}

/* remove every decorative layer from the right/order-summary side */
body.woocommerce-cart::after,
body.woocommerce-checkout::after,
body.woocommerce-cart .site-main::before,
body.woocommerce-cart .site-main::after,
body.woocommerce-cart main::before,
body.woocommerce-cart main::after,
body.woocommerce-cart .cart-collaterals::before,
body.woocommerce-cart .cart-collaterals::after,
body.woocommerce-cart .cart_totals::before,
body.woocommerce-cart .cart_totals::after,
body.woocommerce-checkout .site-main::before,
body.woocommerce-checkout .site-main::after,
body.woocommerce-checkout main::before,
body.woocommerce-checkout main::after,
body.woocommerce-checkout .lm-checkout-shell::before,
body.woocommerce-checkout .lm-checkout-shell::after,
body.woocommerce-checkout .woocommerce-checkout-review-order::before,
body.woocommerce-checkout .woocommerce-checkout-review-order::after,
body.woocommerce-checkout #order_review::before,
body.woocommerce-checkout #order_review::after,
body.woocommerce-checkout .woocommerce-checkout-review-order-table::before,
body.woocommerce-checkout .woocommerce-checkout-review-order-table::after,
body.woocommerce-checkout #payment::before,
body.woocommerce-checkout #payment::after {
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
  opacity: 0 !important;
}

body.woocommerce-cart main,
body.woocommerce-cart .site-main,
body.woocommerce-cart .entry-content,
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout main,
body.woocommerce-checkout .site-main,
body.woocommerce-checkout .entry-content,
body.woocommerce-checkout .woocommerce,
body.woocommerce-checkout form.checkout,
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout .woocommerce-checkout-review-order {
  position: relative !important;
  z-index: 1 !important;
}

/* checkout: summary aligned to the top of the form card */
@media (min-width: 992px) {
  body.woocommerce-checkout .woocommerce form.checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.42fr) minmax(380px, 520px) !important;
    column-gap: 36px !important;
    row-gap: 0 !important;
    align-items: start !important;
  }

  body.woocommerce-checkout .woocommerce form.checkout .col2-set,
  body.woocommerce-checkout .woocommerce form.checkout #customer_details {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    margin-top: 0 !important;
    align-self: start !important;
  }

  body.woocommerce-checkout .woocommerce form.checkout #order_review_heading {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin: 0 0 14px 0 !important;
    align-self: start !important;
  }

  body.woocommerce-checkout .woocommerce form.checkout #order_review,
  body.woocommerce-checkout .woocommerce form.checkout .woocommerce-checkout-review-order {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 0 0 auto !important;
    align-self: start !important;
    justify-self: end !important;
    top: auto !important;
    transform: none !important;
  }

  body.woocommerce-cart .cart-collaterals,
  body.woocommerce-cart .cart_totals {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    align-self: start !important;
  }
}

@media (max-width: 991px) {
  body.woocommerce-cart::before,
  body.woocommerce-checkout::before {
    width: 100vw !important;
    opacity: .16 !important;
  }

  body.woocommerce-checkout .woocommerce form.checkout {
    display: flex !important;
    flex-direction: column !important;
    gap: 22px !important;
  }

  body.woocommerce-checkout .woocommerce form.checkout #order_review,
  body.woocommerce-checkout .woocommerce form.checkout .woocommerce-checkout-review-order {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
}

/* === SKYADS v45: menu always above page content + readable mobile panel ===
   Fixes dropdowns landing underneath checkout/category titles, steppers and coupon bars. */
.lm-topbar,
.lm-topbar--slider,
.lm-topbar--marquee,
.lm-header-utility-bar,
.lm-site-header,
.lm-site-header__inner,
.lm-nav-panel,
.lm-main-nav,
.lm-menu,
.lm-menu > li {
  overflow: visible !important;
}

.lm-topbar,
.lm-topbar--slider,
.lm-topbar--marquee {
  z-index: 2147483000 !important;
}

.lm-header-utility-bar {
  z-index: 2147483001 !important;
}

.lm-site-header {
  z-index: 2147483002 !important;
  isolation: isolate !important;
}

.lm-nav-panel,
.lm-main-nav,
.lm-menu,
.lm-menu > li {
  position: relative !important;
  z-index: 2147483003 !important;
}

.lm-menu .sub-menu {
  z-index: 2147483004 !important;
  background: #fff !important;
  background-color: #fff !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  box-shadow: 0 24px 70px rgba(78, 15, 88, .18) !important;
}

.lm-menu li:hover > .sub-menu,
.lm-menu li:focus-within > .sub-menu,
.lm-menu li.is-hover-open > .sub-menu,
.lm-menu li.is-submenu-open > .sub-menu {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

body.woocommerce-cart .lm-checkout-shell,
body.woocommerce-checkout .lm-checkout-shell,
body.woocommerce-account .lm-checkout-shell,
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-account .woocommerce,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-account .woocommerce-info,
body.woocommerce-cart .lm-checkout-steps,
body.woocommerce-checkout .lm-checkout-steps,
body.woocommerce-account .lm-checkout-steps {
  z-index: 1 !important;
}

@media (min-width: 981px) {
  .lm-menu > li > .sub-menu {
    top: calc(100% + 14px) !important;
  }
}

@media (max-width: 980px) {
  body.lm-menu-open::after {
    content: "" !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147482998 !important;
    background: rgba(255,255,255,.86) !important;
    backdrop-filter: blur(3px) !important;
    pointer-events: none !important;
  }

  body.lm-menu-open .lm-site-header,
  .lm-site-header.is-menu-open {
    z-index: 2147483002 !important;
  }

  .lm-site-header.is-menu-open .lm-nav-panel,
  .lm-nav-panel {
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    top: 78px !important;
    z-index: 2147483005 !important;
    background: #fff !important;
    background-color: #fff !important;
    border: 1px solid rgba(113,34,137,.14) !important;
    box-shadow: 0 28px 80px rgba(78,15,88,.24) !important;
    max-height: calc(100dvh - 96px) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.admin-bar .lm-site-header.is-menu-open .lm-nav-panel,
  body.admin-bar .lm-nav-panel {
    top: 124px !important;
    max-height: calc(100dvh - 142px) !important;
  }

  .lm-menu,
  .lm-menu > li,
  .lm-menu .sub-menu,
  .lm-menu .sub-menu > li {
    position: relative !important;
    z-index: 2147483006 !important;
    background: #fff !important;
  }

  .lm-menu .sub-menu {
    box-shadow: none !important;
    border-radius: 16px !important;
  }
}


/* === SKYADS v46: restore checkout-entry account / guest visual layout ===
   Critical styles moved into main style.css so the guest checkout choice never renders as raw list/text. */
body .lm-checkout-shell--account,
body.woocommerce-account .lm-checkout-shell--account {
  width: min(100% - 32px, 1480px) !important;
  max-width: 1480px !important;
  margin: 0 auto 72px !important;
  padding: clamp(18px, 3vw, 34px) 0 0 !important;
  position: relative !important;
  z-index: 2 !important;
  box-sizing: border-box !important;
}

body .lm-checkout-shell--account .lm-checkout-steps,
body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps,
body .lm-checkout-steps.lm-checkout-steps--compact,
body.woocommerce-account .lm-checkout-steps.lm-checkout-steps--compact {
  width: min(100%, 1200px) !important;
  max-width: 1200px !important;
  margin: 18px auto 30px !important;
  display: block !important;
  position: relative !important;
  z-index: 3 !important;
}

body .lm-checkout-shell--account .lm-checkout-steps ol,
body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps ol,
body .lm-checkout-steps.lm-checkout-steps--compact ol,
body.woocommerce-account .lm-checkout-steps.lm-checkout-steps--compact ol {
  list-style: none !important;
  counter-reset: none !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

body .lm-checkout-shell--account .lm-checkout-steps__item,
body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__item,
body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__item,
body.woocommerce-account .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__item {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body .lm-checkout-shell--account .lm-checkout-steps__item::marker,
body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__item::marker,
body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__item::marker {
  content: "" !important;
  font-size: 0 !important;
}

body .lm-checkout-shell--account .lm-checkout-steps__item a,
body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__item a,
body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__item a,
body.woocommerce-account .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__item a {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  width: 100% !important;
  min-height: 72px !important;
  height: 72px !important;
  padding: 0 26px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid rgba(17,17,17,.10) !important;
  box-shadow: 0 10px 24px rgba(17,17,17,.04) !important;
  color: #151116 !important;
  text-decoration: none !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
}

body .lm-checkout-shell--account .lm-checkout-steps__item.is-active a,
body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__item.is-active a,
body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__item.is-active a {
  background: linear-gradient(135deg, #6f2487 0%, #8e3db0 52%, #7a2b9d 100%) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 18px 34px rgba(113,34,137,.20) !important;
}

body .lm-checkout-shell--account .lm-checkout-steps__index,
body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__index,
body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__index {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  background: rgba(113,34,137,.10) !important;
  color: #6d2584 !important;
  border: 1px solid rgba(113,34,137,.12) !important;
  line-height: 1 !important;
}

body .lm-checkout-shell--account .lm-checkout-steps__item.is-active .lm-checkout-steps__index,
body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__item.is-active .lm-checkout-steps__index,
body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__item.is-active .lm-checkout-steps__index {
  background: #fff !important;
  color: #6d2584 !important;
  border-color: transparent !important;
}

body .lm-checkout-shell--account .lm-checkout-steps__label,
body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__label,
body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__label {
  display: inline-block !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  text-align: left !important;
}

body .lm-account-guest-bar,
body.woocommerce-account .lm-account-guest-bar {
  width: min(100%, 1120px) !important;
  margin: 6px auto 34px !important;
  padding: 22px 26px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  border-radius: 32px !important;
  background: linear-gradient(135deg, #6f2487 0%, #8e3db0 60%, #7a2b9d 100%) !important;
  color: #fff !important;
  box-shadow: 0 22px 52px rgba(113,34,137,.18) !important;
  border: 0 !important;
  box-sizing: border-box !important;
  position: relative !important;
  z-index: 3 !important;
}

body .lm-account-guest-bar__content,
body.woocommerce-account .lm-account-guest-bar__content {
  display: grid !important;
  gap: 6px !important;
  min-width: 0 !important;
  color: #fff !important;
}

body .lm-account-guest-bar__badge,
body.woocommerce-account .lm-account-guest-bar__badge {
  display: inline-flex !important;
  align-items: center !important;
  width: max-content !important;
  padding: 5px 12px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.18) !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body .lm-account-guest-bar__content strong,
body.woocommerce-account .lm-account-guest-bar__content strong {
  display: block !important;
  color: #fff !important;
  font-size: clamp(20px, 2vw, 28px) !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

body .lm-account-guest-bar__content p,
body.woocommerce-account .lm-account-guest-bar__content p {
  display: block !important;
  color: rgba(255,255,255,.88) !important;
  margin: 0 !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
}

body .lm-account-guest-bar__button,
body.woocommerce-account .lm-account-guest-bar__button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  min-height: 52px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #6f2487 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.12) !important;
}

body .lm-checkout-shell--account .u-columns,
body.woocommerce-account .lm-checkout-shell--account .u-columns,
body .lm-checkout-shell--account .woocommerce .u-columns,
body.woocommerce-account .lm-checkout-shell--account .woocommerce .u-columns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: start !important;
  width: min(100%, 1120px) !important;
  margin: 0 auto !important;
}

body .lm-checkout-shell--account .u-column1,
body .lm-checkout-shell--account .u-column2,
body.woocommerce-account .lm-checkout-shell--account .u-column1,
body.woocommerce-account .lm-checkout-shell--account .u-column2 {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  padding: clamp(24px, 3vw, 42px) !important;
  border-radius: 32px !important;
  background: #fff !important;
  box-shadow: 0 24px 70px rgba(17,17,17,.08) !important;
  border: 1px solid rgba(113,34,137,.10) !important;
  box-sizing: border-box !important;
}

@media (max-width: 991px) {
  body .lm-checkout-shell--account .lm-checkout-steps ol,
  body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps ol,
  body .lm-checkout-steps.lm-checkout-steps--compact ol {
    gap: 10px !important;
  }
  body .lm-checkout-shell--account .lm-checkout-steps__item a,
  body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__item a,
  body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__item a {
    min-height: 56px !important;
    height: 56px !important;
    padding: 0 14px !important;
    gap: 10px !important;
  }
  body .lm-checkout-shell--account .lm-checkout-steps__index,
  body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__index,
  body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__index {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    font-size: 15px !important;
  }
  body .lm-checkout-shell--account .lm-checkout-steps__label,
  body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__label,
  body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__label {
    font-size: 13px !important;
    white-space: normal !important;
  }
  body .lm-account-guest-bar,
  body.woocommerce-account .lm-account-guest-bar {
    align-items: stretch !important;
    flex-direction: column !important;
    padding: 20px !important;
    border-radius: 26px !important;
  }
  body .lm-account-guest-bar__button,
  body.woocommerce-account .lm-account-guest-bar__button {
    width: 100% !important;
  }
  body .lm-checkout-shell--account .u-columns,
  body.woocommerce-account .lm-checkout-shell--account .u-columns {
    grid-template-columns: 1fr !important;
  }
}


@media (max-width: 767px) {
  body .lm-checkout-shell--account,
  body.woocommerce-account .lm-checkout-shell--account {
    width: calc(100% - 20px) !important;
    margin-bottom: 42px !important;
  }
  body .lm-checkout-shell--account .lm-checkout-steps ol,
  body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps ol,
  body .lm-checkout-steps.lm-checkout-steps--compact ol {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  body .lm-checkout-shell--account .lm-checkout-steps__item a,
  body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__item a,
  body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__item a {
    min-height: 84px !important;
    height: auto !important;
    padding: 10px 8px !important;
    flex-direction: column !important;
    justify-content: center !important;
    text-align: center !important;
    border-radius: 24px !important;
  }
  body .lm-checkout-shell--account .lm-checkout-steps__index,
  body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__index,
  body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__index {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 16px !important;
  }
  body .lm-checkout-shell--account .lm-checkout-steps__label,
  body.woocommerce-account .lm-checkout-shell--account .lm-checkout-steps__label,
  body .lm-checkout-steps.lm-checkout-steps--compact .lm-checkout-steps__label {
    font-size: 12px !important;
    line-height: 1.2 !important;
    text-align: center !important;
  }
}


/* === SKYADS v47: checkout auth alignment, menu layering, shipping toggle === */

/* Menu/dropdowns must always sit above WooCommerce notices, cart rows and checkout summary. */
.lm-site-header,
.site-header,
header.site-header,
.lm-header,
.lm-topbar,
.lm-header-utility {
  z-index: 2147483000 !important;
}

.lm-site-header,
.site-header,
header.site-header,
.lm-header {
  position: sticky !important;
  top: 0;
  isolation: isolate;
}

body.admin-bar .lm-site-header,
body.admin-bar .site-header,
body.admin-bar header.site-header {
  top: 32px;
}

.lm-header-inner,
.lm-header-main,
.lm-main-navigation,
.lm-nav,
.lm-navigation,
.main-navigation,
.primary-navigation,
.menu,
.nav-menu {
  position: relative !important;
  z-index: 2147483001 !important;
  overflow: visible !important;
}

.lm-main-navigation .sub-menu,
.lm-nav .sub-menu,
.lm-navigation .sub-menu,
.main-navigation .sub-menu,
.primary-navigation .sub-menu,
.menu-item-has-children > .sub-menu,
.lm-mega-menu,
.lm-dropdown-menu,
.lm-menu-dropdown {
  position: absolute !important;
  z-index: 2147483002 !important;
  background: rgba(255,255,255,.985) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  isolation: isolate;
  opacity: 1 !important;
}

/* Keep page content under the menu layer. */
.woocommerce-notices-wrapper,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-cart-form,
.woocommerce-cart-form__contents,
.cart-collaterals,
.cart_totals,
.woocommerce-checkout,
.woocommerce-checkout-review-order,
#order_review,
.lm-checkout-steps,
.lm-checkout-wrapper,
.lm-checkout-layout,
.lm-cart-page,
.lm-cart-table,
.lm-cart-row,
.lm-cart-summary,
.lm-checkout-summary,
.lm-order-summary,
.lm-checkout-auth-grid,
.lm-checkout-auth-columns {
  position: relative;
  z-index: 1 !important;
}

.woocommerce-notices-wrapper {
  pointer-events: auto;
}

/* Login and register columns aligned to the same top axis. */
.woocommerce-checkout .u-columns.col2-set,
.woocommerce-account .u-columns.col2-set,
.woocommerce .u-columns.col2-set,
.woocommerce .col2-set,
.lm-checkout-auth-grid,
.lm-checkout-auth-columns,
.lm-login-register-grid,
.lm-account-auth-grid,
.lm-checkout-login-register {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(24px, 4vw, 48px) !important;
  align-items: start !important;
}

.woocommerce-checkout .u-column1.col-1,
.woocommerce-checkout .u-column2.col-2,
.woocommerce-account .u-column1.col-1,
.woocommerce-account .u-column2.col-2,
.woocommerce .u-column1.col-1,
.woocommerce .u-column2.col-2,
.lm-login-card,
.lm-register-card,
.lm-checkout-login,
.lm-checkout-register,
.lm-auth-login,
.lm-auth-register {
  float: none !important;
  width: 100% !important;
  margin-top: 0 !important;
  align-self: start !important;
}

.woocommerce-checkout form.login,
.woocommerce-checkout form.register,
.woocommerce-account form.login,
.woocommerce-account form.register,
.woocommerce form.login,
.woocommerce form.register {
  margin-top: 0 !important;
}

/* Shipping address should be collapsed behind checkbox. */
#ship-to-different-address {
  margin: 24px 0 16px !important;
  padding: 18px 22px !important;
  border: 1px solid rgba(113,34,137,.16) !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 16px 42px rgba(72,22,86,.08) !important;
}

#ship-to-different-address label {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  cursor: pointer !important;
  font-weight: 700 !important;
  color: #42124d !important;
}

#ship-to-different-address-checkbox {
  width: 20px !important;
  height: 20px !important;
  accent-color: #712289 !important;
  flex: 0 0 auto;
}

.shipping_address {
  margin-top: 0 !important;
}

.shipping_address:not(.is-open) {
  display: none !important;
}

.shipping_address.is-open {
  display: block !important;
}

@media (max-width: 900px) {
  .woocommerce-checkout .u-columns.col2-set,
  .woocommerce-account .u-columns.col2-set,
  .woocommerce .u-columns.col2-set,
  .woocommerce .col2-set,
  .lm-checkout-auth-grid,
  .lm-checkout-auth-columns,
  .lm-login-register-grid,
  .lm-account-auth-grid,
  .lm-checkout-login-register {
    grid-template-columns: 1fr !important;
  }

  .lm-mobile-menu,
  .lm-mobile-navigation,
  .lm-offcanvas,
  .lm-menu-panel,
  .main-navigation.toggled,
  .primary-navigation.toggled {
    z-index: 2147483003 !important;
  }
}

@media (max-width: 782px) {
  body.admin-bar .lm-site-header,
  body.admin-bar .site-header,
  body.admin-bar header.site-header {
    top: 46px;
  }
}


/* === SKYADS v48: hard menu layer + collapsed shipping fields === */
html body .site-shell,
html body .lm-site-header,
html body .lm-site-header__inner,
html body .lm-nav-panel,
html body .lm-main-nav,
html body .lm-menu,
html body .lm-menu > li {
  overflow: visible !important;
  transform: none !important;
  contain: none !important;
}

html body .lm-site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 2147483640 !important;
  isolation: auto !important;
}

html body.admin-bar .lm-site-header { top: 32px !important; }

html body .lm-menu > li > .sub-menu,
html body .lm-menu > li.is-hover-open > .sub-menu,
html body .lm-menu > li:hover > .sub-menu,
html body .lm-menu > li:focus-within > .sub-menu {
  z-index: 2147483647 !important;
  background: #fff !important;
  background-color: #fff !important;
  opacity: 1 !important;
  box-shadow: 0 28px 90px rgba(78, 15, 88, .22) !important;
  pointer-events: auto !important;
}

html body .lm-menu > li > .sub-menu.lm-submenu-fixed {
  position: fixed !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

html body.woocommerce-cart .woocommerce,
html body.woocommerce-cart .woocommerce-cart-form,
html body.woocommerce-cart .woocommerce-cart-form__contents,
html body.woocommerce-cart .cart-collaterals,
html body.woocommerce-cart .cart_totals,
html body.woocommerce-cart .lm-cart-page,
html body.woocommerce-cart .lm-cart-table,
html body.woocommerce-cart .lm-cart-row,
html body.woocommerce-checkout .woocommerce,
html body.woocommerce-checkout .woocommerce-checkout,
html body.woocommerce-checkout .woocommerce-checkout-review-order,
html body.woocommerce-checkout #order_review,
html body.woocommerce-checkout .lm-checkout-wrapper,
html body.woocommerce-checkout .lm-checkout-layout,
html body.woocommerce-checkout .lm-checkout-summary,
html body.woocommerce-checkout .lm-order-summary,
html body .woocommerce-notices-wrapper,
html body .woocommerce-message,
html body .woocommerce-info,
html body .woocommerce-error {
  z-index: 0 !important;
}

html body.woocommerce-checkout #ship-to-different-address {
  display: block !important;
  margin: 24px 0 20px !important;
}

html body.woocommerce-checkout #ship-to-different-address h3 {
  margin: 0 !important;
  font-family: inherit !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
}

html body.woocommerce-checkout #ship-to-different-address label {
  display: flex !important;
  align-items: center !important;
  min-height: 32px !important;
}

html body.woocommerce-checkout #ship-to-different-address-checkbox:not(:checked) ~ span,
html body.woocommerce-checkout #ship-to-different-address-checkbox:not(:checked) + span {
  color: #42124d !important;
}

html body.woocommerce-checkout .shipping_address:not(.is-open) {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.woocommerce-checkout .shipping_address.is-open {
  display: block !important;
  height: auto !important;
  overflow: visible !important;
}

@media (max-width: 782px) {
  html body.admin-bar .lm-site-header { top: 46px !important; }
}


/* === SKYADS v49: repair menu positioning and checkout axis alignment ===
   Do not detach dropdowns from the menu item. They must stay absolute relative
   to the hovered nav item, only layered above WooCommerce content. */
html body .lm-site-header,
html body .lm-header-main,
html body .lm-header-inner,
html body .lm-nav-panel,
html body .lm-main-nav,
html body .lm-menu,
html body .lm-menu > li,
html body .site-header,
html body .main-navigation,
html body .primary-navigation,
html body .menu,
html body .menu > li,
html body .menu-item {
  overflow: visible !important;
  contain: none !important;
}

html body .lm-site-header,
html body .site-header,
html body header.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 100000 !important;
  isolation: isolate !important;
}

html body.admin-bar .lm-site-header,
html body.admin-bar .site-header,
html body.admin-bar header.site-header {
  top: 32px !important;
}

html body .lm-main-nav,
html body .lm-main-navigation,
html body .lm-nav-panel,
html body .main-navigation,
html body .primary-navigation {
  position: relative !important;
  z-index: 100010 !important;
}

html body .lm-menu > li,
html body .main-navigation .menu > li,
html body .primary-navigation .menu > li,
html body .menu > li.menu-item,
html body .menu-item-has-children {
  position: relative !important;
}

html body .lm-menu > li > .sub-menu,
html body .lm-menu > li > .sub-menu.lm-submenu-fixed,
html body .lm-menu > li.is-hover-open > .sub-menu,
html body .lm-menu > li:hover > .sub-menu,
html body .lm-menu > li:focus-within > .sub-menu,
html body .main-navigation .menu > li > .sub-menu,
html body .primary-navigation .menu > li > .sub-menu,
html body .menu > li.menu-item > .sub-menu {
  position: absolute !important;
  top: calc(100% + 14px) !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: max-content !important;
  min-width: 280px !important;
  max-width: min(380px, calc(100vw - 32px)) !important;
  margin: 0 !important;
  z-index: 100020 !important;
  background: rgba(255,255,255,.98) !important;
  background-color: rgba(255,255,255,.98) !important;
  opacity: 1 !important;
  visibility: visible;
  border: 1px solid rgba(113,34,137,.10) !important;
  border-radius: 28px !important;
  box-shadow: 0 24px 70px rgba(48,20,60,.16) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  pointer-events: auto !important;
}

html body .lm-menu > li > .sub-menu.lm-submenu-fixed {
  /* v48 set inline left/top on this class; reset it back to normal menu flow */
  top: calc(100% + 14px) !important;
  left: 50% !important;
  right: auto !important;
  min-width: 280px !important;
}

html body .lm-menu > li:nth-last-child(-n+3) > .sub-menu,
html body .main-navigation .menu > li:nth-last-child(-n+3) > .sub-menu,
html body .primary-navigation .menu > li:nth-last-child(-n+3) > .sub-menu,
html body .menu > li.menu-item:nth-last-child(-n+3) > .sub-menu {
  left: auto !important;
  right: 0 !important;
  transform: none !important;
}

html body .lm-menu > li:not(:hover):not(:focus-within):not(.is-hover-open):not(.is-submenu-open) > .sub-menu,
html body .main-navigation .menu > li:not(:hover):not(:focus-within):not(.is-hover-open):not(.is-submenu-open) > .sub-menu,
html body .primary-navigation .menu > li:not(:hover):not(:focus-within):not(.is-hover-open):not(.is-submenu-open) > .sub-menu {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateX(-50%) translateY(8px) !important;
}

html body .lm-menu > li:nth-last-child(-n+3):not(:hover):not(:focus-within):not(.is-hover-open):not(.is-submenu-open) > .sub-menu,
html body .main-navigation .menu > li:nth-last-child(-n+3):not(:hover):not(:focus-within):not(.is-hover-open):not(.is-submenu-open) > .sub-menu,
html body .primary-navigation .menu > li:nth-last-child(-n+3):not(:hover):not(:focus-within):not(.is-hover-open):not(.is-submenu-open) > .sub-menu {
  transform: translateY(8px) !important;
}

/* Keep all WooCommerce layers below the header/dropdowns without changing their layout. */
html body.woocommerce-cart .woocommerce,
html body.woocommerce-cart .woocommerce-cart-form,
html body.woocommerce-cart .woocommerce-cart-form__contents,
html body.woocommerce-cart .cart-collaterals,
html body.woocommerce-cart .cart_totals,
html body.woocommerce-cart .lm-cart-page,
html body.woocommerce-cart .lm-cart-table,
html body.woocommerce-cart .lm-cart-row,
html body.woocommerce-checkout .woocommerce,
html body.woocommerce-checkout .woocommerce-checkout,
html body.woocommerce-checkout .woocommerce-checkout-review-order,
html body.woocommerce-checkout #order_review,
html body.woocommerce-checkout .lm-checkout-wrapper,
html body.woocommerce-checkout .lm-checkout-layout,
html body.woocommerce-checkout .lm-checkout-summary,
html body.woocommerce-checkout .lm-order-summary,
html body .woocommerce-notices-wrapper,
html body .woocommerce-message,
html body .woocommerce-info,
html body .woocommerce-error {
  z-index: 1 !important;
}

/* Checkout/cart content should share one centered axis. */
html body.woocommerce-cart .site-main,
html body.woocommerce-checkout .site-main,
html body.woocommerce-cart main,
html body.woocommerce-checkout main,
html body.woocommerce-cart .entry-content,
html body.woocommerce-checkout .entry-content,
html body.woocommerce-cart .lm-cart-page,
html body.woocommerce-checkout .lm-checkout-page,
html body.woocommerce-checkout .lm-checkout-wrapper {
  width: min(100% - 96px, 1680px) !important;
  max-width: 1680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout .lm-checkout-steps,
html body.woocommerce-checkout .woocommerce-form-coupon-toggle,
html body.woocommerce-checkout .checkout_coupon,
html body.woocommerce-checkout form.checkout,
html body.woocommerce-cart .woocommerce-cart-form,
html body.woocommerce-cart .cart-collaterals {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Shipping address stays collapsed until user ticks the checkbox. */
html body.woocommerce-checkout #ship-to-different-address-checkbox:not(:checked) ~ span,
html body.woocommerce-checkout #ship-to-different-address-checkbox:not(:checked) + span {
  color: #42124d !important;
}

html body.woocommerce-checkout #ship-to-different-address-checkbox:not(:checked) ~ * {
  color: #42124d !important;
}

html body.woocommerce-checkout .shipping_address:not(.is-open) {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.woocommerce-checkout .shipping_address.is-open {
  display: block !important;
  height: auto !important;
  overflow: visible !important;
}

@media (max-width: 980px) {
  html body .lm-menu > li > .sub-menu,
  html body .lm-menu > li > .sub-menu.lm-submenu-fixed,
  html body .lm-menu > li.is-hover-open > .sub-menu,
  html body .lm-menu > li:hover > .sub-menu,
  html body .lm-menu > li:focus-within > .sub-menu,
  html body .main-navigation .menu > li > .sub-menu,
  html body .primary-navigation .menu > li > .sub-menu,
  html body .menu > li.menu-item > .sub-menu {
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-shadow: none !important;
    border-radius: 18px !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  html body.woocommerce-cart .site-main,
  html body.woocommerce-checkout .site-main,
  html body.woocommerce-cart main,
  html body.woocommerce-checkout main,
  html body.woocommerce-cart .entry-content,
  html body.woocommerce-checkout .entry-content,
  html body.woocommerce-cart .lm-cart-page,
  html body.woocommerce-checkout .lm-checkout-page,
  html body.woocommerce-checkout .lm-checkout-wrapper {
    width: calc(100% - 32px) !important;
  }
}

@media (max-width: 782px) {
  html body.admin-bar .lm-site-header,
  html body.admin-bar .site-header,
  html body.admin-bar header.site-header {
    top: 46px !important;
  }
}

/* === SKYADS v50: desktop dropdown portal over page content ===
   The previous absolute submenu could still be painted below cart/hero content in some
   WooCommerce views. Hide original top-level dropdowns on desktop and show the JS portal
   fixed to the viewport, positioned from the hovered menu item. */
@media (min-width: 981px) {
  html body .lm-menu > li > .sub-menu {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html body .lm-submenu-portal {
    position: fixed !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 2147483647 !important;
    width: max-content !important;
    min-width: 280px !important;
    max-width: min(380px, calc(100vw - 32px)) !important;
    margin: 0 !important;
    padding: 18px 20px !important;
    list-style: none !important;
    background: rgba(255,255,255,.985) !important;
    border: 1px solid rgba(113,34,137,.10) !important;
    border-radius: 28px !important;
    box-shadow: 0 28px 90px rgba(48,20,60,.20) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
    contain: none !important;
    isolation: isolate !important;
  }

  html body .lm-submenu-portal,
  html body .lm-submenu-portal li,
  html body .lm-submenu-portal a {
    box-sizing: border-box !important;
  }

  html body .lm-submenu-portal li {
    display: block !important;
    width: 100% !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(113,34,137,.08) !important;
  }

  html body .lm-submenu-portal li:last-child {
    border-bottom: 0 !important;
  }

  html body .lm-submenu-portal a {
    display: block !important;
    width: 100% !important;
    padding: 13px 18px !important;
    color: #4e0f58 !important;
    font-family: var(--font-body, inherit) !important;
    font-weight: 800 !important;
    font-size: 17px !important;
    line-height: 1.18 !important;
    letter-spacing: .01em !important;
    text-decoration: none !important;
    text-transform: none !important;
    background: transparent !important;
    border-radius: 14px !important;
  }

  html body .lm-submenu-portal a:hover,
  html body .lm-submenu-portal a:focus-visible {
    color: #712289 !important;
    background: rgba(207,164,222,.14) !important;
    outline: none !important;
  }

  html body .lm-submenu-portal .sub-menu {
    position: static !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 6px 0 0 !important;
    padding: 0 0 0 10px !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transform: none !important;
  }

  html body .lm-submenu-portal .sub-menu a {
    font-size: 15px !important;
    opacity: .9 !important;
  }
}


/* === SKYADS v51: remove duplicated desktop dropdown ===
   v50 renders the active submenu in a body-level portal. The original submenu inside
   the header must be fully suppressed on desktop; otherwise both versions are visible. */
@media (min-width: 981px) {
  html body .lm-site-header .menu > li.menu-item-has-children > ul.sub-menu,
  html body .lm-site-header .lm-menu > li.menu-item-has-children > ul.sub-menu,
  html body .lm-site-header nav ul.menu > li.menu-item-has-children > ul.sub-menu,
  html body header.site-header .menu > li.menu-item-has-children > ul.sub-menu,
  html body header.site-header nav ul.menu > li.menu-item-has-children > ul.sub-menu,
  html body .site-header .menu > li.menu-item-has-children > ul.sub-menu,
  html body .site-header nav ul.menu > li.menu-item-has-children > ul.sub-menu,
  html body .main-navigation .menu > li.menu-item-has-children > ul.sub-menu,
  html body .primary-navigation .menu > li.menu-item-has-children > ul.sub-menu {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: none !important;
  }

  html body > .lm-submenu-portal {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

/* === SKYADS v55: checkout account login/register equal top alignment ===
   On the My Account step during guest checkout, keep login and register as two real columns
   aligned to the same top axis. Registration stays on the left, login stays on the right. */
body.woocommerce-account .lm-checkout-shell--account #customer_login,
body.woocommerce-account .lm-checkout-shell--account #customer_login.u-columns,
body.woocommerce-account .lm-checkout-shell--account #customer_login.u-columns.col2-set,
body.woocommerce-account .lm-checkout-shell--account .woocommerce #customer_login,
body.woocommerce-account .lm-checkout-shell--account .woocommerce #customer_login.u-columns.col2-set {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-flow: column !important;
  align-items: start !important;
  gap: clamp(28px, 4vw, 56px) !important;
  width: min(100%, 1480px) !important;
  max-width: 1480px !important;
  margin: clamp(32px, 4vw, 56px) auto 0 !important;
  padding: 0 !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.woocommerce-account .lm-checkout-shell--account #customer_login::before,
body.woocommerce-account .lm-checkout-shell--account #customer_login::after {
  content: none !important;
  display: none !important;
}

body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column1,
body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column2,
body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column1.col-1,
body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column2.col-2 {
  float: none !important;
  clear: none !important;
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  align-self: start !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Registration left, login right. */
body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column2,
body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column2.col-2 {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column1,
body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column1.col-1 {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column1 > h2,
body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column2 > h2,
body.woocommerce-account .lm-checkout-shell--account #customer_login form.login,
body.woocommerce-account .lm-checkout-shell--account #customer_login form.register,
body.woocommerce-account .lm-checkout-shell--account #customer_login .woocommerce-form-login,
body.woocommerce-account .lm-checkout-shell--account #customer_login .woocommerce-form-register {
  margin-top: 0 !important;
}

body.woocommerce-account .lm-checkout-shell--account #customer_login .woocommerce-form-login,
body.woocommerce-account .lm-checkout-shell--account #customer_login .woocommerce-form-register,
body.woocommerce-account .lm-checkout-shell--account #customer_login form.login,
body.woocommerce-account .lm-checkout-shell--account #customer_login form.register {
  width: 100% !important;
  max-width: none !important;
  min-height: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 991px) {
  body.woocommerce-account .lm-checkout-shell--account #customer_login,
  body.woocommerce-account .lm-checkout-shell--account #customer_login.u-columns,
  body.woocommerce-account .lm-checkout-shell--account #customer_login.u-columns.col2-set,
  body.woocommerce-account .lm-checkout-shell--account .woocommerce #customer_login,
  body.woocommerce-account .lm-checkout-shell--account .woocommerce #customer_login.u-columns.col2-set {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    width: 100% !important;
    margin-top: 28px !important;
  }

  body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column1,
  body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column2,
  body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column1.col-1,
  body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column2.col-2 {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column1,
  body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column1.col-1 {
    order: 1 !important;
  }

  body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column2,
  body.woocommerce-account .lm-checkout-shell--account #customer_login .u-column2.col-2 {
    order: 2 !important;
  }
}

/* === SKYADS v56: delivery method selector in checkout summary === */
body.woocommerce-checkout .lm-checkout-delivery-methods {
  margin: 24px 0 26px !important;
  padding: 24px !important;
  border: 1px solid rgba(113, 34, 137, .12) !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 18px 52px rgba(72, 22, 86, .08) !important;
  color: #17131a !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods__head {
  margin: 0 0 16px !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods__head h3 {
  margin: 6px 0 0 !important;
  font-size: clamp(22px, 2vw, 30px) !important;
  line-height: 1.15 !important;
  color: #17131a !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods__list {
  display: grid !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods__item {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(113, 34, 137, .13) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, .96) !important;
  box-shadow: 0 10px 24px rgba(72, 22, 86, .05) !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods__radio {
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  accent-color: #712289 !important;
  flex: 0 0 auto !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods__label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  gap: 14px !important;
  margin: 0 !important;
  cursor: pointer !important;
  color: #17131a !important;
  font-weight: 700 !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods__name,
body.woocommerce-checkout .lm-checkout-delivery-methods__name * {
  color: #17131a !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods__name .woocommerce-Price-amount {
  font-weight: 800 !important;
  white-space: nowrap !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods__empty {
  margin: 0 !important;
  color: #6f6674 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

body.woocommerce-checkout .lm-checkout-delivery-methods + #payment,
body.woocommerce-checkout .lm-checkout-delivery-methods ~ #payment {
  margin-top: 18px !important;
}


@media (max-width: 767px) {
  body.woocommerce-checkout .lm-checkout-delivery-methods {
    padding: 18px !important;
    border-radius: 22px !important;
  }

  body.woocommerce-checkout .lm-checkout-delivery-methods__item {
    padding: 14px !important;
  }
}


/* === SKYADS v57: make guest checkout delivery selector visible === */
body.woocommerce-checkout .lm-checkout-delivery-methods--v57 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
body.woocommerce-checkout .lm-checkout-delivery-methods--v57 .lm-checkout-delivery-methods__empty {
  padding: 14px 16px !important;
  border-radius: 18px !important;
  background: rgba(113, 34, 137, .06) !important;
  color: #4b145d !important;
  font-weight: 600 !important;
}


/* === SKYADS v58: payment method card matches delivery card + hide logged-in default shipping row === */
body.woocommerce-checkout .lm-checkout-sidebar-heading {
  margin: 26px 0 0 !important;
  padding: 48px 50px 16px !important;
  border: 1px solid rgba(113, 34, 137, .12) !important;
  border-bottom: 0 !important;
  border-radius: 42px 42px 0 0 !important;
  background: rgba(255, 255, 255, .96) !important;
  box-shadow: 0 24px 70px rgba(42, 21, 52, .07) !important;
}

body.woocommerce-checkout .lm-checkout-sidebar-heading .lm-checkout-section-heading__eyebrow {
  display: none !important;
}

body.woocommerce-checkout .lm-checkout-sidebar-heading h3 {
  margin: 0 !important;
  color: #17131a !important;
  font-family: var(--lm-heading-font, Georgia, serif) !important;
  font-size: clamp(34px, 3.2vw, 58px) !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
}

body.woocommerce-checkout #payment,
body.woocommerce-checkout .woocommerce-checkout-payment {
  margin: 0 !important;
  padding: 18px 50px 48px !important;
  border: 1px solid rgba(113, 34, 137, .12) !important;
  border-top: 0 !important;
  border-radius: 0 0 42px 42px !important;
  background: rgba(255, 255, 255, .96) !important;
  box-shadow: 0 24px 70px rgba(42, 21, 52, .07) !important;
  overflow: visible !important;
}

body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout .woocommerce-checkout-payment ul.payment_methods {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  list-style: none !important;
  background: transparent !important;
}

body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method,
body.woocommerce-checkout #payment .wc_payment_method,
body.woocommerce-checkout .woocommerce-checkout-payment .wc_payment_method {
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"] {
  position: absolute !important;
  left: 34px !important;
  top: 50% !important;
  z-index: 2 !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
  accent-color: #712289 !important;
  opacity: 1 !important;
}

body.woocommerce-checkout #payment .wc_payment_method > label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 88px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 22px 32px 22px 96px !important;
  border: 1px solid rgba(113, 34, 137, .12) !important;
  border-radius: 32px !important;
  background: #fff !important;
  color: #17131a !important;
  font-size: clamp(18px, 1.35vw, 24px) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  cursor: pointer !important;
  box-shadow: 0 12px 34px rgba(42, 21, 52, .035) !important;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"]:checked + label,
body.woocommerce-checkout #payment .wc_payment_method:has(> input[type="radio"]:checked) > label {
  border-color: rgba(113, 34, 137, .28) !important;
  box-shadow: 0 18px 44px rgba(113, 34, 137, .10) !important;
}

body.woocommerce-checkout #payment .wc_payment_method > label img {
  max-width: 150px !important;
  max-height: 54px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 0 0 24px !important;
  flex: 0 0 auto !important;
}

body.woocommerce-checkout #payment .wc_payment_method .payment_box {
  width: calc(100% - 42px) !important;
  margin: 14px 0 0 42px !important;
  padding: 18px 22px !important;
  border: 1px solid rgba(113, 34, 137, .10) !important;
  border-radius: 22px !important;
  background: rgba(113, 34, 137, .045) !important;
  color: #4d4353 !important;
  box-shadow: none !important;
}

body.woocommerce-checkout #payment .wc_payment_method .payment_box::before,
body.woocommerce-checkout #payment .wc_payment_method .payment_box:before {
  display: none !important;
  content: none !important;
}

/* Standard Woo shipping table is duplicated by the custom delivery selector for logged-in users. */
body.logged-in.woocommerce-checkout tr.woocommerce-shipping-totals.shipping,
body.logged-in.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping {
  display: none !important;
}


@media (max-width: 767px) {
  body.woocommerce-checkout .lm-checkout-sidebar-heading {
    padding: 30px 24px 12px !important;
    border-radius: 28px 28px 0 0 !important;
  }

  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-checkout-payment {
    padding: 14px 24px 30px !important;
    border-radius: 0 0 28px 28px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"] {
    left: 22px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method > label {
    min-height: 76px !important;
    padding: 18px 18px 18px 62px !important;
    border-radius: 24px !important;
    font-size: 17px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method > label img {
    max-width: 96px !important;
    max-height: 38px !important;
    margin-left: 12px !important;
  }
}

/* === SKYADS v59: compact payment methods like delivery cards === */
body.woocommerce-checkout #payment,
body.woocommerce-checkout .woocommerce-checkout-payment {
  width: 100% !important;
  max-width: 100% !important;
  background: #fff !important;
  border: 1px solid rgba(113, 34, 137, .14) !important;
  border-radius: 34px !important;
  padding: 34px !important;
  box-shadow: 0 22px 70px rgba(48, 20, 60, .08) !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout .lm-checkout-sidebar-heading h3,
body.woocommerce-checkout #payment h3,
body.woocommerce-checkout .woocommerce-checkout-payment h3 {
  font-size: clamp(34px, 3vw, 54px) !important;
  line-height: .98 !important;
  margin: 0 0 28px !important;
  max-width: 100% !important;
  white-space: normal !important;
}

body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment .wc_payment_methods {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  list-style: none !important;
  display: block !important;
}

body.woocommerce-checkout #payment .wc_payment_method {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 82px !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: 1px solid rgba(113, 34, 137, .16) !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment .wc_payment_method:has(input[type="radio"]:checked) {
  border-color: rgba(113, 34, 137, .36) !important;
  box-shadow: 0 14px 34px rgba(113, 34, 137, .08) !important;
}

body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"] {
  position: absolute !important;
  left: 28px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  accent-color: #712289 !important;
  z-index: 2 !important;
}

body.woocommerce-checkout #payment .wc_payment_method > label {
  width: 100% !important;
  min-height: 82px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 18px 28px 18px 78px !important;
  margin: 0 !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: #17131a !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
}

body.woocommerce-checkout #payment .wc_payment_method > label img {
  display: block !important;
  max-width: 120px !important;
  max-height: 42px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 0 0 auto !important;
}

body.woocommerce-checkout #payment .wc_payment_method .payment_box {
  width: calc(100% - 56px) !important;
  margin: 0 28px 22px !important;
  padding: 18px 20px !important;
  border-radius: 20px !important;
  background: rgba(113, 34, 137, .04) !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment .place-order {
  margin-top: 22px !important;
}

body.woocommerce-checkout tr.woocommerce-shipping-totals.shipping {
  display: none !important;
}


@media (max-width: 767px) {
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-checkout-payment {
    padding: 22px !important;
    border-radius: 26px !important;
  }

  body.woocommerce-checkout .lm-checkout-sidebar-heading h3,
  body.woocommerce-checkout #payment h3,
  body.woocommerce-checkout .woocommerce-checkout-payment h3 {
    font-size: 34px !important;
    margin-bottom: 22px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method {
    min-height: 76px !important;
    border-radius: 24px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"] {
    left: 22px !important;
    width: 20px !important;
    height: 20px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method > label {
    min-height: 76px !important;
    padding: 16px 20px 16px 62px !important;
    font-size: 18px !important;
    gap: 12px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method > label img {
    max-width: 92px !important;
    max-height: 34px !important;
  }
}

/* === SKYADS v60: payment heading inside payment box + full width compact methods === */
body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout #order_review {
  overflow: visible !important;
}

body.woocommerce-checkout .lm-checkout-sidebar-heading {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-checkout .lm-checkout-sidebar-heading .lm-checkout-section-heading__eyebrow {
  display: none !important;
}

body.woocommerce-checkout .lm-checkout-sidebar-heading h3 {
  font-size: clamp(34px, 3.2vw, 56px) !important;
  line-height: 1.02 !important;
  margin: 0 0 26px !important;
  padding: 0 !important;
  max-width: none !important;
}

body.woocommerce-checkout #payment,
body.woocommerce-checkout .woocommerce-checkout-payment {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: block !important;
  background: #fff !important;
  border: 1px solid rgba(113, 34, 137, .14) !important;
  border-radius: 34px !important;
  padding: 34px !important;
  margin: 28px 0 0 !important;
  box-shadow: 0 22px 70px rgba(48, 20, 60, .08) !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

body.woocommerce-checkout #payment .lm-checkout-sidebar-heading,
body.woocommerce-checkout .woocommerce-checkout-payment .lm-checkout-sidebar-heading {
  width: 100% !important;
  max-width: 100% !important;
}

body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment .wc_payment_methods,
body.woocommerce-checkout #payment .payment_methods.methods {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  list-style: none !important;
  display: block !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment .wc_payment_method,
body.woocommerce-checkout #payment li.wc_payment_method,
body.woocommerce-checkout #payment .payment_methods > li {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 82px !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: 1px solid rgba(113, 34, 137, .16) !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
}

body.woocommerce-checkout #payment .wc_payment_method:has(input[type="radio"]:checked),
body.woocommerce-checkout #payment .payment_methods > li:has(input[type="radio"]:checked) {
  border-color: rgba(113, 34, 137, .36) !important;
  box-shadow: 0 14px 34px rgba(113, 34, 137, .08) !important;
}

body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"],
body.woocommerce-checkout #payment .payment_methods > li > input[type="radio"] {
  position: absolute !important;
  left: 28px !important;
  top: 41px !important;
  transform: translateY(-50%) !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  accent-color: #712289 !important;
  z-index: 2 !important;
}

body.woocommerce-checkout #payment .wc_payment_method > label,
body.woocommerce-checkout #payment .payment_methods > li > label {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 82px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 18px 28px 18px 78px !important;
  margin: 0 !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: #17131a !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
  float: none !important;
}

body.woocommerce-checkout #payment .wc_payment_method > label img,
body.woocommerce-checkout #payment .payment_methods > li > label img {
  display: block !important;
  max-width: 120px !important;
  max-height: 42px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 0 0 auto !important;
  flex: 0 0 auto !important;
}

body.woocommerce-checkout #payment .wc_payment_method .payment_box,
body.woocommerce-checkout #payment .payment_methods > li .payment_box {
  width: calc(100% - 56px) !important;
  max-width: calc(100% - 56px) !important;
  margin: 0 28px 22px !important;
  padding: 18px 20px !important;
  border-radius: 20px !important;
  background: rgba(113, 34, 137, .04) !important;
  box-sizing: border-box !important;
  float: none !important;
}

body.woocommerce-checkout #payment .place-order {
  width: 100% !important;
  margin-top: 22px !important;
}

body.woocommerce-checkout tr.woocommerce-shipping-totals.shipping {
  display: none !important;
}


@media (max-width: 767px) {
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-checkout-payment {
    padding: 22px !important;
    border-radius: 26px !important;
  }

  body.woocommerce-checkout .lm-checkout-sidebar-heading h3 {
    font-size: 34px !important;
    line-height: 1.05 !important;
    margin-bottom: 22px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method,
  body.woocommerce-checkout #payment li.wc_payment_method,
  body.woocommerce-checkout #payment .payment_methods > li {
    min-height: 76px !important;
    border-radius: 24px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"],
  body.woocommerce-checkout #payment .payment_methods > li > input[type="radio"] {
    left: 22px !important;
    top: 38px !important;
    width: 20px !important;
    height: 20px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method > label,
  body.woocommerce-checkout #payment .payment_methods > li > label {
    min-height: 76px !important;
    padding: 16px 20px 16px 62px !important;
    font-size: 18px !important;
    gap: 12px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method > label img,
  body.woocommerce-checkout #payment .payment_methods > li > label img {
    max-width: 92px !important;
    max-height: 34px !important;
  }

  body.woocommerce-checkout #payment .wc_payment_method .payment_box,
  body.woocommerce-checkout #payment .payment_methods > li .payment_box {
    width: calc(100% - 40px) !important;
    max-width: calc(100% - 40px) !important;
    margin: 0 20px 18px !important;
  }
}



/* === SKYADS v61: combined delivery/payment heading + payment cards aligned to shipping cards === */
/* One visible heading for this whole area: delivery + payment. */
body.woocommerce-checkout .lm-checkout-delivery-methods__head h3 {
  font-size: clamp(22px, 2vw, 30px) !important;
  line-height: 1.15 !important;
  margin: 6px 0 0 !important;
}

/* Payment title is no longer a separate large block; the combined heading above covers both sections. */
body.woocommerce-checkout #payment .lm-checkout-sidebar-heading,
body.woocommerce-checkout .woocommerce-checkout-payment .lm-checkout-sidebar-heading {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

/* Payment wrapper matches the delivery selector card spacing. */
html body.woocommerce-checkout #payment,
html body.woocommerce-checkout .woocommerce-checkout-payment {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 24px 0 26px !important;
  padding: 24px !important;
  border: 1px solid rgba(113, 34, 137, .12) !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 18px 52px rgba(72, 22, 86, .08) !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

/* Force the actual WooCommerce payment list to use the full available column width. */
html body.woocommerce-checkout #payment ul.payment_methods,
html body.woocommerce-checkout #payment ul.wc_payment_methods,
html body.woocommerce-checkout #payment .wc_payment_methods,
html body.woocommerce-checkout #payment .payment_methods.methods,
html body.woocommerce-checkout #payment .payment_methods {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  list-style: none !important;
  box-sizing: border-box !important;
}

/* Payment method rows should have the same visual rhythm as shipping rows. */
html body.woocommerce-checkout #payment .wc_payment_method,
html body.woocommerce-checkout #payment li.wc_payment_method,
html body.woocommerce-checkout #payment ul.payment_methods > li,
html body.woocommerce-checkout #payment .payment_methods > li {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(113, 34, 137, .13) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, .96) !important;
  box-shadow: 0 10px 24px rgba(72, 22, 86, .05) !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  float: none !important;
  clear: both !important;
}

/* Active payment method only gets the same subtle selected outline. */
html body.woocommerce-checkout #payment .wc_payment_method:has(input[type="radio"]:checked),
html body.woocommerce-checkout #payment .payment_methods > li:has(input[type="radio"]:checked) {
  border-color: rgba(113, 34, 137, .36) !important;
  box-shadow: 0 14px 34px rgba(113, 34, 137, .08) !important;
}

/* Radio aligned like delivery radios, not floating into the card corner. */
html body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment .payment_methods > li > input[type="radio"] {
  position: absolute !important;
  left: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  accent-color: #712289 !important;
  z-index: 2 !important;
}

/* Label full width with font/height closer to delivery methods. */
html body.woocommerce-checkout #payment .wc_payment_method > label,
html body.woocommerce-checkout #payment .payment_methods > li > label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 0 0 44px !important;
  box-sizing: border-box !important;
  color: #17131a !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  float: none !important;
}

html body.woocommerce-checkout #payment .wc_payment_method > label img,
html body.woocommerce-checkout #payment .payment_methods > li > label img {
  display: block !important;
  max-width: 110px !important;
  max-height: 34px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 0 0 auto !important;
  flex: 0 0 auto !important;
}

/* Description/payment fields open below selected method using the same column width. */
html body.woocommerce-checkout #payment .wc_payment_method .payment_box,
html body.woocommerce-checkout #payment .payment_methods > li .payment_box {
  width: calc(100% - 44px) !important;
  max-width: calc(100% - 44px) !important;
  margin: 14px 0 0 44px !important;
  padding: 16px 18px !important;
  border-radius: 20px !important;
  background: rgba(113, 34, 137, .04) !important;
  box-sizing: border-box !important;
  float: none !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

html body.woocommerce-checkout #payment .wc_payment_method .payment_box p {
  margin: 0 0 10px !important;
}

html body.woocommerce-checkout #payment .wc_payment_method .payment_box p:last-child {
  margin-bottom: 0 !important;
}

html body.woocommerce-checkout #payment .place-order {
  width: 100% !important;
  margin-top: 22px !important;
}

/* Keep the default Woo shipping totals row hidden; custom delivery selector is the visible UI. */
html body.woocommerce-checkout tr.woocommerce-shipping-totals.shipping {
  display: none !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout #payment,
  html body.woocommerce-checkout .woocommerce-checkout-payment {
    padding: 18px !important;
    border-radius: 22px !important;
    margin: 20px 0 24px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method,
  html body.woocommerce-checkout #payment li.wc_payment_method,
  html body.woocommerce-checkout #payment ul.payment_methods > li,
  html body.woocommerce-checkout #payment .payment_methods > li {
    padding: 14px !important;
    border-radius: 22px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment .payment_methods > li > input[type="radio"] {
    left: 14px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method > label,
  html body.woocommerce-checkout #payment .payment_methods > li > label {
    padding-left: 38px !important;
    font-size: 16px !important;
    gap: 10px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method > label img,
  html body.woocommerce-checkout #payment .payment_methods > li > label img {
    max-width: 86px !important;
    max-height: 30px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment .payment_methods > li .payment_box {
    width: calc(100% - 38px) !important;
    max-width: calc(100% - 38px) !important;
    margin-left: 38px !important;
  }
}


/* === SKYADS v62: center delivery/payment selector inside checkout column ===
   Both sections stay full-width inside the right checkout column, but the inner cards
   are centered between the same left/right spacers so they do not visually lean left. */
html body.woocommerce-checkout .woocommerce-checkout-review-order,
html body.woocommerce-checkout #order_review {
  box-sizing: border-box !important;
}

html body.woocommerce-checkout .lm-checkout-delivery-methods,
html body.woocommerce-checkout #payment,
html body.woocommerce-checkout .woocommerce-checkout-payment {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout .lm-checkout-delivery-methods__list,
html body.woocommerce-checkout #payment ul.payment_methods,
html body.woocommerce-checkout #payment ul.wc_payment_methods,
html body.woocommerce-checkout #payment .wc_payment_methods,
html body.woocommerce-checkout #payment .payment_methods.methods,
html body.woocommerce-checkout #payment .payment_methods {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout .lm-checkout-delivery-methods__item,
html body.woocommerce-checkout #payment .wc_payment_method,
html body.woocommerce-checkout #payment li.wc_payment_method,
html body.woocommerce-checkout #payment ul.payment_methods > li,
html body.woocommerce-checkout #payment .payment_methods > li {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout #payment .wc_payment_method > label,
html body.woocommerce-checkout #payment .payment_methods > li > label,
html body.woocommerce-checkout .lm-checkout-delivery-methods__label {
  box-sizing: border-box !important;
}

/* Payment descriptions/embedded card fields should align with the selected payment row. */
html body.woocommerce-checkout #payment .wc_payment_method .payment_box,
html body.woocommerce-checkout #payment .payment_methods > li .payment_box {
  width: 100% !important;
  max-width: 100% !important;
  margin: 14px auto 0 !important;
  box-sizing: border-box !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout .lm-checkout-delivery-methods,
  html body.woocommerce-checkout #payment,
  html body.woocommerce-checkout .woocommerce-checkout-payment {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}


/* === SKYADS v63: carousel arrows and refined spacing === */
@media (min-width: 981px) {
  body .lm-joga-carousel-wrap {
    margin-top: 50px !important;
  }

  body .bestsellers-arc-shell,
  body .lm-joga-arc-shell,
  body .lm-related-arc-shell {
    position: relative !important;
  }

  body .lm-carousel-arrows-shell {
    overflow: visible !important;
  }

  body .lm-carousel-arrow {
    position: absolute !important;
    top: 50% !important;
    z-index: 20 !important;
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(113, 34, 137, .22) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .94) !important;
    color: #712289 !important;
    font-family: var(--font-sans) !important;
    font-size: 42px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
    box-shadow: 0 16px 36px rgba(48, 20, 60, .12) !important;
    cursor: pointer !important;
    transform: translateY(-50%) !important;
    transition: opacity .18s ease, transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
    padding: 0 0 4px !important;
  }

  body .lm-carousel-arrow--prev {
    left: clamp(8px, 1.4vw, 24px) !important;
  }

  body .lm-carousel-arrow--next {
    right: clamp(8px, 1.4vw, 24px) !important;
  }

  body .lm-carousel-arrow:hover:not(:disabled),
  body .lm-carousel-arrow:focus-visible:not(:disabled) {
    border-color: rgba(113, 34, 137, .44) !important;
    box-shadow: 0 20px 46px rgba(48, 20, 60, .18) !important;
    transform: translateY(-50%) scale(1.04) !important;
    outline: none !important;
  }

  body .lm-carousel-arrow:disabled {
    opacity: .28 !important;
    cursor: default !important;
    pointer-events: none !important;
  }

  body .lm-carousel-arrows-hidden .lm-carousel-arrow {
    display: none !important;
  }

  body .bestsellers-scroller.lm-manual-product-carousel,
  body .lm-joga-scroller.lm-manual-product-carousel,
  body .lm-related-scroller.lm-manual-product-carousel {
    scroll-padding-left: 86px !important;
    scroll-padding-right: 86px !important;
  }
}

@media (max-width: 980px) {
  body .lm-carousel-arrow {
    display: none !important;
  }

  body .lm-joga-carousel-wrap {
    margin-top: 34px !important;
    margin-bottom: 22px !important;
  }

  body .lm-joga-arc-shell,
  body .lm-related-arc-shell {
    min-height: auto !important;
  }

  body .lm-joga-scroller {
    padding-top: 46px !important;
    padding-bottom: 18px !important;
  }

  body .lm-joga-category-block {
    margin-bottom: clamp(46px, 12vw, 74px) !important;
  }
}

@media (max-width: 640px) {
  body .lm-joga-carousel-wrap {
    margin-top: 30px !important;
    margin-bottom: 14px !important;
  }

  body .lm-joga-scroller {
    padding-bottom: 12px !important;
  }
}


/* === SKYADS v64: carousel arrow vertical alignment + refined section spacing === */
@media (min-width: 981px) {
  body .lm-joga-carousel-wrap {
    margin-top: clamp(70px, 5.6vw, 96px) !important;
  }

  body .lm-carousel-arrow {
    top: var(--lm-carousel-arrow-top, 212px) !important;
    transform: translateY(-50%) !important;
  }

  body .lm-carousel-arrow:hover:not(:disabled),
  body .lm-carousel-arrow:focus-visible:not(:disabled) {
    transform: translateY(-50%) scale(1.04) !important;
  }
}

@media (max-width: 980px) {
  body .lm-carousel-arrow {
    display: none !important;
  }

  /* Keep the already-correct distance from image to carousel and mirror it below the carousel. */
  body .lm-joga-carousel-wrap {
    margin-top: 34px !important;
    margin-bottom: 34px !important;
  }

  body .lm-joga-category-block {
    margin-bottom: clamp(34px, 9vw, 58px) !important;
  }
}

@media (max-width: 640px) {
  body .lm-joga-carousel-wrap {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }

  body .lm-joga-category-block {
    margin-bottom: 46px !important;
  }
}

/* === SKYADS v65: payment method border belongs to whole <li>, not inner label ===
   Payment rows must behave like delivery rows: selected outline around the complete
   method item, with the optional payment_box inside that same bordered card. */
html body.woocommerce-checkout #payment ul.payment_methods,
html body.woocommerce-checkout #payment ul.wc_payment_methods,
html body.woocommerce-checkout #payment .wc_payment_methods,
html body.woocommerce-checkout #payment .payment_methods.methods,
html body.woocommerce-checkout #payment .payment_methods {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout #payment .wc_payment_method,
html body.woocommerce-checkout #payment li.wc_payment_method,
html body.woocommerce-checkout #payment ul.payment_methods > li,
html body.woocommerce-checkout #payment .payment_methods > li {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(113, 34, 137, .14) !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(72, 22, 86, .05) !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
}

html body.woocommerce-checkout #payment .wc_payment_method:has(> input[type="radio"]:checked),
html body.woocommerce-checkout #payment .payment_methods > li:has(> input[type="radio"]:checked) {
  border-color: rgba(113, 34, 137, .42) !important;
  box-shadow: 0 14px 34px rgba(113, 34, 137, .08) !important;
}

html body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment .payment_methods > li > input[type="radio"] {
  position: absolute !important;
  left: 28px !important;
  top: 39px !important;
  transform: translateY(-50%) !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  z-index: 3 !important;
  accent-color: #712289 !important;
}

html body.woocommerce-checkout #payment .wc_payment_method > label,
html body.woocommerce-checkout #payment .payment_methods > li > label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 78px !important;
  margin: 0 !important;
  padding: 18px 24px 18px 72px !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #17131a !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  float: none !important;
}

html body.woocommerce-checkout #payment .wc_payment_method > label img,
html body.woocommerce-checkout #payment .payment_methods > li > label img {
  display: block !important;
  max-width: 116px !important;
  max-height: 36px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 0 0 auto !important;
  flex: 0 0 auto !important;
}

html body.woocommerce-checkout #payment .wc_payment_method .payment_box,
html body.woocommerce-checkout #payment .payment_methods > li .payment_box {
  width: calc(100% - 96px) !important;
  max-width: calc(100% - 96px) !important;
  margin: 0 24px 24px 72px !important;
  padding: 18px 20px !important;
  border: 1px solid rgba(113, 34, 137, .12) !important;
  border-radius: 22px !important;
  background: rgba(113, 34, 137, .04) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
  color: #17131a !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

html body.woocommerce-checkout #payment .wc_payment_method .payment_box::before,
html body.woocommerce-checkout #payment .wc_payment_method .payment_box:before,
html body.woocommerce-checkout #payment .payment_methods > li .payment_box::before,
html body.woocommerce-checkout #payment .payment_methods > li .payment_box:before {
  display: none !important;
  content: none !important;
}

html body.woocommerce-checkout #payment .wc_payment_method .payment_box p {
  margin: 0 0 10px !important;
}

html body.woocommerce-checkout #payment .wc_payment_method .payment_box p:last-child {
  margin-bottom: 0 !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout #payment ul.payment_methods,
  html body.woocommerce-checkout #payment ul.wc_payment_methods,
  html body.woocommerce-checkout #payment .wc_payment_methods,
  html body.woocommerce-checkout #payment .payment_methods.methods,
  html body.woocommerce-checkout #payment .payment_methods {
    gap: 14px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method,
  html body.woocommerce-checkout #payment li.wc_payment_method,
  html body.woocommerce-checkout #payment ul.payment_methods > li,
  html body.woocommerce-checkout #payment .payment_methods > li {
    border-radius: 24px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment .payment_methods > li > input[type="radio"] {
    left: 22px !important;
    top: 38px !important;
    width: 20px !important;
    height: 20px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method > label,
  html body.woocommerce-checkout #payment .payment_methods > li > label {
    min-height: 76px !important;
    padding: 16px 20px 16px 62px !important;
    font-size: 17px !important;
    gap: 12px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method > label img,
  html body.woocommerce-checkout #payment .payment_methods > li > label img {
    max-width: 92px !important;
    max-height: 34px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment .payment_methods > li .payment_box {
    width: calc(100% - 82px) !important;
    max-width: calc(100% - 82px) !important;
    margin: 0 20px 20px 62px !important;
    padding: 16px 18px !important;
    border-radius: 20px !important;
  }
}

/* === SKYADS v66: checkout payment cards exactly like delivery cards ===
   Border/selected state belongs to the whole <li.wc_payment_method>, not label/input.
   The radio is vertically centered against the payment method row text/logo. */
html body.woocommerce-checkout #payment ul.payment_methods,
html body.woocommerce-checkout #payment ul.wc_payment_methods,
html body.woocommerce-checkout #payment .wc_payment_methods,
html body.woocommerce-checkout #payment .payment_methods.methods,
html body.woocommerce-checkout #payment .payment_methods {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method,
html body.woocommerce-checkout #payment .wc_payment_method,
html body.woocommerce-checkout #payment ul.payment_methods > li,
html body.woocommerce-checkout #payment .payment_methods > li {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(113, 34, 137, .16) !important;
  border-radius: 30px !important;
  background: #fff !important;
  background-color: #fff !important;
  box-shadow: none !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method:has(> input[type="radio"]:checked),
html body.woocommerce-checkout #payment .wc_payment_method:has(> input[type="radio"]:checked),
html body.woocommerce-checkout #payment ul.payment_methods > li:has(> input[type="radio"]:checked),
html body.woocommerce-checkout #payment .payment_methods > li:has(> input[type="radio"]:checked) {
  border-color: rgba(113, 34, 137, .46) !important;
  background: #fff !important;
  background-color: #fff !important;
  box-shadow: 0 14px 34px rgba(113, 34, 137, .08) !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > label,
html body.woocommerce-checkout #payment .wc_payment_method > label,
html body.woocommerce-checkout #payment ul.payment_methods > li > label,
html body.woocommerce-checkout #payment .payment_methods > li > label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  width: 100% !important;
  min-height: 92px !important;
  margin: 0 !important;
  padding: 22px 30px 22px 92px !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 30px !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  color: #17131a !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  float: none !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method:has(.payment_box) > label,
html body.woocommerce-checkout #payment .wc_payment_method:has(.payment_box) > label,
html body.woocommerce-checkout #payment ul.payment_methods > li:has(.payment_box) > label,
html body.woocommerce-checkout #payment .payment_methods > li:has(.payment_box) > label {
  border-radius: 30px 30px 0 0 !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment ul.payment_methods > li > input[type="radio"],
html body.woocommerce-checkout #payment .payment_methods > li > input[type="radio"] {
  position: absolute !important;
  left: 30px !important;
  top: 46px !important;
  transform: translateY(-50%) !important;
  width: 26px !important;
  height: 26px !important;
  margin: 0 !important;
  z-index: 4 !important;
  accent-color: #712289 !important;
  box-shadow: none !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > label img,
html body.woocommerce-checkout #payment .wc_payment_method > label img,
html body.woocommerce-checkout #payment ul.payment_methods > li > label img,
html body.woocommerce-checkout #payment .payment_methods > li > label img {
  display: block !important;
  max-width: 126px !important;
  max-height: 40px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 0 0 auto !important;
  flex: 0 0 auto !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box,
html body.woocommerce-checkout #payment .wc_payment_method .payment_box,
html body.woocommerce-checkout #payment ul.payment_methods > li .payment_box,
html body.woocommerce-checkout #payment .payment_methods > li .payment_box {
  display: block !important;
  width: calc(100% - 120px) !important;
  max-width: calc(100% - 120px) !important;
  margin: 0 30px 30px 90px !important;
  padding: 22px 26px !important;
  border: 1px solid rgba(113, 34, 137, .14) !important;
  border-radius: 26px !important;
  background: rgba(113, 34, 137, .035) !important;
  background-color: rgba(113, 34, 137, .035) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
  color: #17131a !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  overflow: hidden !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box::before,
html body.woocommerce-checkout #payment li.wc_payment_method .payment_box:before,
html body.woocommerce-checkout #payment .wc_payment_method .payment_box::before,
html body.woocommerce-checkout #payment .wc_payment_method .payment_box:before {
  display: none !important;
  content: none !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box p,
html body.woocommerce-checkout #payment .wc_payment_method .payment_box p {
  margin: 0 0 10px !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box p:last-child,
html body.woocommerce-checkout #payment .wc_payment_method .payment_box p:last-child {
  margin-bottom: 0 !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout #payment ul.payment_methods,
  html body.woocommerce-checkout #payment ul.wc_payment_methods,
  html body.woocommerce-checkout #payment .wc_payment_methods,
  html body.woocommerce-checkout #payment .payment_methods.methods,
  html body.woocommerce-checkout #payment .payment_methods {
    gap: 16px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method,
  html body.woocommerce-checkout #payment .wc_payment_method,
  html body.woocommerce-checkout #payment ul.payment_methods > li,
  html body.woocommerce-checkout #payment .payment_methods > li {
    border-radius: 26px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > label,
  html body.woocommerce-checkout #payment .wc_payment_method > label,
  html body.woocommerce-checkout #payment ul.payment_methods > li > label,
  html body.woocommerce-checkout #payment .payment_methods > li > label {
    min-height: 82px !important;
    padding: 18px 22px 18px 72px !important;
    border-radius: 26px !important;
    font-size: 18px !important;
    gap: 12px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method:has(.payment_box) > label,
  html body.woocommerce-checkout #payment .wc_payment_method:has(.payment_box) > label,
  html body.woocommerce-checkout #payment ul.payment_methods > li:has(.payment_box) > label,
  html body.woocommerce-checkout #payment .payment_methods > li:has(.payment_box) > label {
    border-radius: 26px 26px 0 0 !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment ul.payment_methods > li > input[type="radio"],
  html body.woocommerce-checkout #payment .payment_methods > li > input[type="radio"] {
    left: 22px !important;
    top: 41px !important;
    width: 24px !important;
    height: 24px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > label img,
  html body.woocommerce-checkout #payment .wc_payment_method > label img,
  html body.woocommerce-checkout #payment ul.payment_methods > li > label img,
  html body.woocommerce-checkout #payment .payment_methods > li > label img {
    max-width: 98px !important;
    max-height: 34px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment .wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment ul.payment_methods > li .payment_box,
  html body.woocommerce-checkout #payment .payment_methods > li .payment_box {
    width: calc(100% - 94px) !important;
    max-width: calc(100% - 94px) !important;
    margin: 0 22px 22px 72px !important;
    padding: 18px 20px !important;
    border-radius: 22px !important;
    font-size: 15px !important;
  }
}

/* === SKYADS v67: payment method full <li> card fix ===
   The visible card, border and selected state must be applied to the whole
   <li class="wc_payment_method ..."> element, never to the inner label/button. */
html body.woocommerce-checkout #payment ul.payment_methods,
html body.woocommerce-checkout #payment ul.wc_payment_methods,
html body.woocommerce-checkout #payment .wc_payment_methods,
html body.woocommerce-checkout #payment .payment_methods.methods,
html body.woocommerce-checkout #payment .payment_methods {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
  overflow: hidden !important;

  background: #fff !important;
  background-color: #fff !important;
  border: 1px solid rgba(113, 34, 137, .16) !important;
  border-radius: 30px !important;
  box-shadow: none !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method:has(> input[type="radio"]:checked),
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method:has(> input[type="radio"]:checked),
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method:has(> input[type="radio"]:checked) {
  border-color: rgba(113, 34, 137, .48) !important;
  box-shadow: 0 16px 42px rgba(113, 34, 137, .08) !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
  position: absolute !important;
  left: 30px !important;
  top: 43px !important;
  transform: translateY(-50%) !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
  z-index: 5 !important;
  accent-color: #712289 !important;
  box-shadow: none !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > label,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label,
html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"] + label,
html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"]:checked + label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 86px !important;
  margin: 0 !important;
  padding: 20px 30px 20px 88px !important;
  gap: 18px !important;
  box-sizing: border-box !important;
  float: none !important;

  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;

  color: #17131a !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > label img,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label img,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label img {
  display: block !important;
  max-width: 126px !important;
  max-height: 40px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 0 0 auto !important;
  flex: 0 0 auto !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method .payment_box,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method .payment_box {
  display: block !important;
  width: calc(100% - 118px) !important;
  max-width: calc(100% - 118px) !important;
  margin: 0 30px 28px 88px !important;
  padding: 22px 26px !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;

  background: rgba(113, 34, 137, .035) !important;
  background-color: rgba(113, 34, 137, .035) !important;
  border: 1px solid rgba(113, 34, 137, .14) !important;
  border-radius: 26px !important;
  box-shadow: none !important;
  color: #17131a !important;
  overflow: hidden !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box::before,
html body.woocommerce-checkout #payment li.wc_payment_method .payment_box:before {
  display: none !important;
  content: none !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box p {
  margin: 0 !important;
  color: #17131a !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout #payment ul.payment_methods,
  html body.woocommerce-checkout #payment ul.wc_payment_methods,
  html body.woocommerce-checkout #payment .wc_payment_methods,
  html body.woocommerce-checkout #payment .payment_methods.methods,
  html body.woocommerce-checkout #payment .payment_methods {
    gap: 16px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method {
    border-radius: 26px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
    left: 22px !important;
    top: 39px !important;
    width: 22px !important;
    height: 22px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > label,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label,
  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"] + label,
  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"]:checked + label {
    min-height: 78px !important;
    padding: 16px 22px 16px 64px !important;
    font-size: 18px !important;
    gap: 12px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > label img,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label img,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label img {
    max-width: 98px !important;
    max-height: 34px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method .payment_box {
    width: calc(100% - 86px) !important;
    max-width: calc(100% - 86px) !important;
    margin: 0 22px 22px 64px !important;
    padding: 18px 20px !important;
    border-radius: 22px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method .payment_box p {
    font-size: 15px !important;
  }
}

/* === SKYADS v68: checkout payment radio centered with whole LI card grid ===
   Keep the visible card on li.wc_payment_method and center the radio in the
   payment-method row, not against an inner label/button. */
html body.woocommerce-checkout #payment li.wc_payment_method,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method {
  display: grid !important;
  grid-template-columns: 88px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 86px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 30px !important;
  border: 1px solid rgba(113, 34, 137, .16) !important;
  background: #fff !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method:has(> input[type="radio"]:checked),
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method:has(> input[type="radio"]:checked),
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method:has(> input[type="radio"]:checked) {
  border-color: rgba(113, 34, 137, .48) !important;
  box-shadow: 0 16px 42px rgba(113, 34, 137, .08) !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
  grid-column: 1 !important;
  grid-row: 1 !important;
  position: relative !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  align-self: center !important;
  justify-self: center !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
  z-index: 5 !important;
  accent-color: #712289 !important;
  box-shadow: none !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > label,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label,
html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"] + label,
html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"]:checked + label {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 86px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 20px 30px 20px 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  box-sizing: border-box !important;
  color: #17131a !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > label img,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label img,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label img {
  display: block !important;
  max-width: 126px !important;
  max-height: 40px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 0 0 auto !important;
  flex: 0 0 auto !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method .payment_box,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method .payment_box {
  grid-column: 2 !important;
  grid-row: 2 !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 30px 28px 0 !important;
  padding: 22px 26px !important;
  background: rgba(113, 34, 137, .035) !important;
  border: 1px solid rgba(113, 34, 137, .14) !important;
  border-radius: 26px !important;
  box-shadow: none !important;
  color: #17131a !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box::before,
html body.woocommerce-checkout #payment li.wc_payment_method .payment_box:before {
  display: none !important;
  content: none !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout #payment li.wc_payment_method,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method {
    grid-template-columns: 64px minmax(0, 1fr) !important;
    min-height: 78px !important;
    border-radius: 26px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
    width: 22px !important;
    height: 22px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > label,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label,
  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"] + label,
  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"]:checked + label {
    min-height: 78px !important;
    padding: 16px 22px 16px 0 !important;
    font-size: 18px !important;
    gap: 12px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > label img,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label img,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label img {
    max-width: 98px !important;
    max-height: 34px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method .payment_box {
    margin: 0 22px 22px 0 !important;
    padding: 18px 20px !important;
    border-radius: 22px !important;
  }
}

/* === SKYADS v70: payment radio centered against full LI card === */
html body.woocommerce-checkout #payment li.wc_payment_method,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method {
  position: relative !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
  position: absolute !important;
  grid-column: auto !important;
  grid-row: auto !important;
  left: 44px !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  align-self: auto !important;
  justify-self: auto !important;
  margin: 0 !important;
  z-index: 6 !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
    left: 32px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
  }
}

/* === SKYADS v71: keep payment method text and logo on one visual axis ===
   Payment labels contain text nodes and logos directly inside <label>. Keep the
   label row stable so the method name and payment logo are always centered
   against the same horizontal axis, regardless of selected state or payment_box. */
html body.woocommerce-checkout #payment li.wc_payment_method > label,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label,
html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"] + label,
html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"]:checked + label {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  min-height: 86px !important;
  line-height: 1.2 !important;
  white-space: normal !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > label img,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label img,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label img {
  align-self: center !important;
  justify-self: end !important;
  display: block !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-left: auto !important;
  transform: none !important;
  vertical-align: middle !important;
}

/* Keep the radio centered against the full payment card while label contents stay centered in their row. */
html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
  left: 44px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout #payment li.wc_payment_method > label,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label,
  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"] + label,
  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"]:checked + label {
    min-height: 78px !important;
    gap: 12px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
    left: 32px !important;
  }
}

/* === SKYADS v72: one horizontal axis for payment radio, text and logo ===
   The payment method <li> is the actual card. Its first row is a two-column grid:
   radio + label. The payment description stays below, so selecting a method does
   not move the radio vertically or break the text/logo axis. */
html body.woocommerce-checkout #payment li.wc_payment_method,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) !important;
  grid-template-areas:
    "radio label"
    ". box" !important;
  column-gap: 34px !important;
  row-gap: 0 !important;
  align-items: center !important;
  padding: 0 30px !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
  grid-area: radio !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  align-self: center !important;
  justify-self: center !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  margin: 0 !important;
  z-index: 2 !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > label,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label,
html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"] + label,
html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"]:checked + label {
  grid-area: label !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 100px !important;
  padding: 20px 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 22px !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method > label img,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label img,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label img {
  flex: 0 0 auto !important;
  align-self: center !important;
  margin: 0 0 0 auto !important;
  display: block !important;
}

html body.woocommerce-checkout #payment li.wc_payment_method .payment_box,
html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method .payment_box,
html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method .payment_box {
  grid-area: box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 28px 0 !important;
  box-sizing: border-box !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout #payment li.wc_payment_method,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method {
    grid-template-columns: 22px minmax(0, 1fr) !important;
    column-gap: 20px !important;
    padding: 0 22px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > input[type="radio"] {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method > label,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method > label,
  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"] + label,
  html body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"]:checked + label {
    min-height: 78px !important;
    padding: 16px 0 !important;
    gap: 14px !important;
  }

  html body.woocommerce-checkout #payment li.wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method .payment_box,
  html body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method .payment_box {
    margin: 0 0 22px 0 !important;
  }
}

/* === SKYADS v73: ship-to-different-address checkbox like newsletter checkbox === */
html body.woocommerce-checkout h3#ship-to-different-address,
html body.woocommerce-checkout #ship-to-different-address {
  display: block !important;
  margin: 22px 0 22px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-family: inherit !important;
}

html body.woocommerce-checkout #ship-to-different-address label,
html body.woocommerce-checkout #ship-to-different-address label.checkbox,
html body.woocommerce-checkout #ship-to-different-address label.woocommerce-form__label-for-checkbox {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  cursor: pointer !important;
  color: #42124d !important;
  font-family: inherit !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
}

html body.woocommerce-checkout #ship-to-different-address span {
  color: #42124d !important;
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: inherit !important;
}

html body.woocommerce-checkout #ship-to-different-address-checkbox,
html body.woocommerce-checkout #ship-to-different-address input[type="checkbox"] {
  -webkit-appearance: none !important;
  appearance: none !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  flex: 0 0 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 2px solid #7f33a5 !important;
  border-radius: 5px !important;
  background: #fff !important;
  box-shadow: none !important;
  cursor: pointer !important;
  position: relative !important;
  vertical-align: middle !important;
  accent-color: #7f33a5 !important;
}

html body.woocommerce-checkout #ship-to-different-address-checkbox::before,
html body.woocommerce-checkout #ship-to-different-address input[type="checkbox"]::before {
  content: "" !important;
  width: 6px !important;
  height: 11px !important;
  border-right: 2.5px solid #fff !important;
  border-bottom: 2.5px solid #fff !important;
  transform: rotate(45deg) scale(0) !important;
  transform-origin: center center !important;
  transition: transform .15s ease !important;
  position: relative !important;
  top: -1px !important;
}

html body.woocommerce-checkout #ship-to-different-address-checkbox:checked,
html body.woocommerce-checkout #ship-to-different-address input[type="checkbox"]:checked {
  background: #7f33a5 !important;
  border-color: #7f33a5 !important;
}

html body.woocommerce-checkout #ship-to-different-address-checkbox:checked::before,
html body.woocommerce-checkout #ship-to-different-address input[type="checkbox"]:checked::before {
  transform: rotate(45deg) scale(1) !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout #ship-to-different-address label,
  html body.woocommerce-checkout #ship-to-different-address label.checkbox,
  html body.woocommerce-checkout #ship-to-different-address label.woocommerce-form__label-for-checkbox {
    font-size: 16px !important;
    gap: 10px !important;
  }
}

/* === SKYADS v74: restore full-viewport sticky mandalas on product category pages ===
   Product category archives must keep the decorative mandala as a full viewport
   layer, not clipped to the archive container width. The product section uses the
   left mandala; the description section owns the right mandala. */
html body.tax-product_cat .lm-archive-page,
html body.tax-product_cat .lm-archive-shell,
html body.tax-product_cat .lm-category-products-mandala-zone,
html body.tax-product_cat .lm-archive-description-full {
  overflow: visible !important;
  clip-path: none !important;
  contain: none !important;
  content-visibility: visible !important;
}

html body.tax-product_cat .lm-archive-page,
html body.tax-product_cat .lm-archive-shell {
  position: relative !important;
  isolation: isolate !important;
}

html body.tax-product_cat .lm-category-products-mandala-zone,
html body.tax-product_cat .lm-archive-description-full {
  position: relative !important;
  isolation: auto !important;
  z-index: auto !important;
  background: transparent !important;
}

html body.tax-product_cat .lm-category-products-mandala-zone::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  background-attachment: fixed !important;
  opacity: .24 !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

html body.tax-product_cat .lm-archive-description-full::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: auto 100vh !important;
  background-attachment: fixed !important;
  opacity: .24 !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

html body.tax-product_cat .lm-category-products-mandala-zone > *,
html body.tax-product_cat .lm-archive-description-full > *,
html body.tax-product_cat .lm-shop-header,
html body.tax-product_cat .lm-archive-filters,
html body.tax-product_cat .lm-archive-toolbar,
html body.tax-product_cat .lm-archive-grid,
html body.tax-product_cat .lm-archive-description-full .lm-section-heading,
html body.tax-product_cat .lm-archive-description-full .lm-description-content {
  position: relative !important;
  z-index: 1 !important;
}

html body.tax-product_cat .lm-trustmate-section,
html body.tax-product_cat .lm-trustmate-shell,
html body.tax-product_cat [id^="tm-widget"],
html body.tax-product_cat [class*="trustmate"] {
  position: relative !important;
  z-index: 3 !important;
  background: #fff !important;
}

@media (max-width: 1024px) {
  html body.tax-product_cat .lm-category-products-mandala-zone::before,
  html body.tax-product_cat .lm-archive-description-full::before {
    background-size: auto 92svh !important;
    opacity: .20 !important;
  }
}

@media (max-width: 768px) {
  html body.tax-product_cat .lm-category-products-mandala-zone::before,
  html body.tax-product_cat .lm-archive-description-full::before {
    background-size: auto 78svh !important;
    opacity: .16 !important;
  }
}

/* === SKYADS v75: hide left mandala on single product description ===
   Product description must not show a decorative mandala on the left side.
   Keep the product description background clean on the left and allow only the
   right-side decorative layer for the description block. */
html body.single-product .lm-product-description-full {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
}

/* The older product-page fixed layer can bleed into the description area.
   Disable it on product pages and let the description section own its own layer. */
html body.single-product .lm-product-page::before {
  display: none !important;
  content: none !important;
  background-image: none !important;
}

/* Right-side mandala for the product description only. */
html body.single-product .lm-product-description-full::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin: 0 !important;
  z-index: -2 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: auto 100vh !important;
  background-attachment: fixed !important;
  opacity: .22 !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

/* Clean left side in the product description area so no left mandala appears there. */
html body.single-product .lm-product-description-full::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 50% !important;
  width: 100vw !important;
  margin-left: -50vw !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg,
    rgba(255,255,255,.98) 0%,
    rgba(255,255,255,.96) 36%,
    rgba(255,255,255,.78) 52%,
    rgba(255,255,255,0) 76%
  ) !important;
}

html body.single-product .lm-product-description-full > *,
html body.single-product .lm-product-description-full .lm-section-heading,
html body.single-product .lm-product-description-full .lm-description-content {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 1024px) {
  html body.single-product .lm-product-description-full::before {
    background-size: auto 92svh !important;
    opacity: .19 !important;
  }
}

@media (max-width: 768px) {
  html body.single-product .lm-product-description-full::before {
    background-size: auto 78svh !important;
    opacity: .16 !important;
  }

  html body.single-product .lm-product-description-full::after {
    background: linear-gradient(90deg,
      rgba(255,255,255,.99) 0%,
      rgba(255,255,255,.97) 44%,
      rgba(255,255,255,.74) 66%,
      rgba(255,255,255,0) 100%
    ) !important;
  }
}

/* === SKYADS v76: single product mandalas scoped by section ===
   Product top/gallery area owns only the left sticky mandala.
   Product description area owns only the right sticky mandala.
   Do not use full-page fixed product mandalas, because they make both sides
   visible at the same time. */
html body.single-product .lm-product-page,
html body.single-product .lm-product-shell,
html body.single-product .lm-product-top,
html body.single-product .lm-product-description-full {
  overflow: visible !important;
  clip-path: none !important;
  contain: none !important;
  content-visibility: visible !important;
}

html body.single-product .lm-product-page {
  position: relative !important;
  isolation: isolate !important;
}

/* Kill old product-page/global product mandala layer. */
html body.single-product .lm-product-page::before,
html body.single-product .lm-product-page::after {
  display: none !important;
  content: none !important;
  background-image: none !important;
}

/* Product images/top section: LEFT mandala only. */
html body.single-product .lm-product-top {
  position: relative !important;
  isolation: isolate !important;
}

html body.single-product .lm-product-top::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -2 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .24 !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

html body.single-product .lm-product-top::after {
  display: none !important;
  content: none !important;
  background-image: none !important;
}

html body.single-product .lm-product-top > * {
  position: relative !important;
  z-index: 1 !important;
}

/* Product description section: RIGHT mandala only. */
html body.single-product .lm-product-description-full {
  position: relative !important;
  isolation: isolate !important;
  background: transparent !important;
}

html body.single-product .lm-product-description-full::before {
  content: "" !important;
  position: sticky !important;
  top: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  margin-bottom: -100vh !important;
  z-index: -2 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: auto 100vh !important;
  opacity: .22 !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

/* No left-cover/left-mandala layer in description. */
html body.single-product .lm-product-description-full::after {
  display: none !important;
  content: none !important;
  background-image: none !important;
  background: none !important;
}

html body.single-product .lm-product-description-full > *,
html body.single-product .lm-product-description-full .lm-section-heading,
html body.single-product .lm-product-description-full .lm-description-content {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 1024px) {
  html body.single-product .lm-product-top::before,
  html body.single-product .lm-product-description-full::before {
    height: 100svh !important;
    min-height: 100svh !important;
    margin-bottom: -100svh !important;
    background-size: auto 92svh !important;
    opacity: .19 !important;
  }
}

@media (max-width: 768px) {
  html body.single-product .lm-product-top::before,
  html body.single-product .lm-product-description-full::before {
    height: 100svh !important;
    min-height: 100svh !important;
    margin-bottom: -100svh !important;
    background-size: auto 78svh !important;
    opacity: .16 !important;
  }
}

/* === SKYADS v77: category mandala should not show both sides at once ===
   Product category archive: products area owns only the left mandala.
   Category description owns only the right mandala. The right mandala is enabled
   only while the description section is in the viewport, so the products list
   never shows two mandalas at the same time. */
html body.tax-product_cat .lm-archive-description-full::before {
  opacity: 0 !important;
  visibility: hidden !important;
}

html body.tax-product_cat.lm-category-description-active .lm-archive-description-full::before {
  opacity: .24 !important;
  visibility: visible !important;
}

html body.tax-product_cat.lm-category-description-active .lm-category-products-mandala-zone::before {
  opacity: 0 !important;
  visibility: hidden !important;
}

@media (max-width: 1024px) {
  html body.tax-product_cat.lm-category-description-active .lm-archive-description-full::before {
    opacity: .20 !important;
  }
}

@media (max-width: 768px) {
  html body.tax-product_cat.lm-category-description-active .lm-archive-description-full::before {
    opacity: .16 !important;
  }
}

/* === SKYADS v78: tighter spacing above shipping-address checkbox ===
   The custom checkbox "Zaznaczam inny adres do wysyłki" should sit closer to
   the preceding divider/form area, matching the spacing used after the form and line. */
html body.woocommerce-checkout .woocommerce-shipping-fields,
html body.woocommerce-checkout #customer_details .woocommerce-shipping-fields,
html body.woocommerce-checkout .lm-checkout-fields .woocommerce-shipping-fields {
  margin-top: 12px !important;
  padding-top: 0 !important;
}

html body.woocommerce-checkout h3#ship-to-different-address,
html body.woocommerce-checkout #ship-to-different-address {
  margin-top: 12px !important;
  margin-bottom: 22px !important;
  padding-top: 0 !important;
}

html body.woocommerce-checkout .woocommerce-billing-fields + .woocommerce-shipping-fields,
html body.woocommerce-checkout .woocommerce-additional-fields + .woocommerce-shipping-fields {
  margin-top: 12px !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout #customer_details .woocommerce-shipping-fields,
  html body.woocommerce-checkout .lm-checkout-fields .woocommerce-shipping-fields {
    margin-top: 10px !important;
  }

  html body.woocommerce-checkout h3#ship-to-different-address,
  html body.woocommerce-checkout #ship-to-different-address {
    margin-top: 10px !important;
    margin-bottom: 18px !important;
  }
}

/* === SKYADS v79: remove extra top spacer above shipping-address checkbox ===
   The "Zaznaczam inny adres do wysyłki" toggle should start right after the
   billing form divider, without the oversized blank gap. */
html body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
html body.woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

html body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > p:last-child,
html body.woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper > p:last-child,
html body.woocommerce-checkout p#billing_city_field,
html body.woocommerce-checkout p#billing_state_field,
html body.woocommerce-checkout p#billing_postcode_field {
  margin-bottom: 22px !important;
}

html body.woocommerce-checkout .woocommerce-billing-fields + .woocommerce-shipping-fields,
html body.woocommerce-checkout #customer_details .woocommerce-billing-fields + .woocommerce-shipping-fields,
html body.woocommerce-checkout #customer_details .col-2 .woocommerce-shipping-fields,
html body.woocommerce-checkout .col-2 .woocommerce-shipping-fields {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html body.woocommerce-checkout h3#ship-to-different-address,
html body.woocommerce-checkout #ship-to-different-address,
html body.woocommerce-checkout .col-2 h3#ship-to-different-address,
html body.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html body.woocommerce-checkout .woocommerce-additional-fields,
html body.woocommerce-checkout #customer_details .woocommerce-additional-fields {
  margin-top: 22px !important;
  padding-top: 0 !important;
}


@media (max-width: 767px) {
  html body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > p:last-child,
  html body.woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper > p:last-child,
  html body.woocommerce-checkout p#billing_city_field,
  html body.woocommerce-checkout p#billing_state_field,
  html body.woocommerce-checkout p#billing_postcode_field {
    margin-bottom: 18px !important;
  }

  html body.woocommerce-checkout .woocommerce-additional-fields,
  html body.woocommerce-checkout #customer_details .woocommerce-additional-fields {
    margin-top: 18px !important;
  }
}

/* === SKYADS v80: simplified mobile menu with arrow-only accordions === */
@media (max-width: 980px) {
  body.lm-menu-open {
    overflow: hidden !important;
  }

  .lm-site-header .lm-nav-panel {
    position: fixed !important;
    inset: var(--lm-header-height, 88px) 0 0 0 !important;
    display: none !important;
    width: 100vw !important;
    max-width: 100vw !important;
    padding: 18px 18px 34px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: rgba(255, 255, 255, .98) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: 0 24px 70px rgba(48, 20, 60, .16) !important;
    z-index: 100000 !important;
  }

  .lm-site-header.is-menu-open .lm-nav-panel {
    display: block !important;
  }

  .lm-site-header .lm-main-nav,
  .lm-site-header .lm-main-nav .menu-primary-container,
  .lm-site-header .lm-main-nav .menu,
  .lm-site-header .lm-menu {
    width: 100% !important;
    max-width: 100% !important;
  }

  .lm-site-header .lm-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .lm-site-header .lm-menu li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    list-style: none !important;
  }

  .lm-site-header .lm-menu > li {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 46px !important;
    align-items: center !important;
    border-bottom: 1px solid rgba(113, 34, 137, .10) !important;
  }

  .lm-site-header .lm-menu > li > a {
    min-height: 58px !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    padding: 16px 10px 16px 0 !important;
    margin: 0 !important;
    color: #4e0f58 !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
  }

  .lm-site-header .lm-menu > li > a::before,
  .lm-site-header .lm-menu > li > a::after {
    display: none !important;
    content: none !important;
  }

  .lm-site-header .lm-submenu-toggle {
    position: static !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(113, 34, 137, .20) !important;
    background: rgba(255, 255, 255, .92) !important;
    box-shadow: 0 10px 26px rgba(78, 15, 88, .08) !important;
    color: #712289 !important;
    cursor: pointer !important;
    z-index: 2 !important;
  }

  .lm-site-header .lm-submenu-toggle span[aria-hidden="true"] {
    display: block !important;
    width: 10px !important;
    height: 10px !important;
    border-right: 2px solid currentColor !important;
    border-bottom: 2px solid currentColor !important;
    transform: translateY(-2px) rotate(45deg) !important;
    transition: transform .18s ease !important;
  }

  .lm-site-header .lm-menu li.is-submenu-open > .lm-submenu-toggle span[aria-hidden="true"] {
    transform: translateY(2px) rotate(225deg) !important;
  }

  .lm-site-header .lm-menu .sub-menu {
    grid-column: 1 / -1 !important;
    position: static !important;
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 0 10px 14px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  .lm-site-header .lm-menu li.is-submenu-open > .sub-menu {
    display: block !important;
  }

  .lm-site-header .lm-menu .sub-menu li {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 40px !important;
    align-items: center !important;
    border-top: 1px solid rgba(113, 34, 137, .07) !important;
  }

  .lm-site-header .lm-menu .sub-menu a {
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    padding: 11px 8px 11px 0 !important;
    color: #4e0f58 !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
    text-transform: none !important;
  }

  .lm-site-header .lm-menu .sub-menu .lm-submenu-toggle {
    width: 36px !important;
    height: 36px !important;
    box-shadow: none !important;
  }

  .lm-site-header .lm-mobile-search {
    margin-bottom: 12px !important;
  }

  .lm-site-header .lm-mobile-utility {
    margin: 12px 0 0 !important;
    padding: 14px 0 0 !important;
    border-top: 1px solid rgba(113, 34, 137, .10) !important;
    border-bottom: 0 !important;
  }
}

/* === SKYADS v81: mobile submenu current item full-row highlight === */
@media (max-width: 991px) {
  .lm-site-header .lm-menu .sub-menu {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .lm-site-header .lm-menu .sub-menu > li {
    width: 100% !important;
    margin: 4px 0 !important;
    padding: 0 !important;
    border-top: 1px solid rgba(113, 34, 137, .07) !important;
    border-radius: 24px !important;
    background: transparent !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .lm-site-header .lm-menu .sub-menu > li.current-menu-item,
  .lm-site-header .lm-menu .sub-menu > li.current-menu-ancestor,
  .lm-site-header .lm-menu .sub-menu > li.current-menu-parent {
    background: rgba(113, 34, 137, .08) !important;
    border: 1px solid rgba(113, 34, 137, .18) !important;
    box-shadow: inset 0 0 0 1px rgba(113, 34, 137, .04) !important;
  }

  .lm-site-header .lm-menu .sub-menu > li > a {
    width: 100% !important;
    min-height: 50px !important;
    padding: 12px 18px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }

  .lm-site-header .lm-menu .sub-menu > li.current-menu-item > a,
  .lm-site-header .lm-menu .sub-menu > li.current-menu-ancestor > a,
  .lm-site-header .lm-menu .sub-menu > li.current-menu-parent > a {
    color: #4e0f58 !important;
    background: transparent !important;
  }

  .lm-site-header .lm-menu .sub-menu > li > a::before,
  .lm-site-header .lm-menu .sub-menu > li > a::after {
    display: none !important;
    content: none !important;
  }
}

/* ===== v82 mobile menu padding + desktop-style chevrons ===== */
@media (max-width: 980px) {
  .lm-nav-panel .lm-menu > li > a,
  .lm-nav-panel .lm-menu .sub-menu > li > a,
  .lm-menu > li > a,
  .lm-menu .sub-menu > li > a {
    padding-left: 32px !important;
    padding-right: 78px !important;
    text-indent: 0 !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
  }

  .lm-nav-panel .lm-menu .sub-menu > li > a,
  .lm-menu .sub-menu > li > a {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  .lm-menu > li.menu-item-has-children > a,
  .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 78px !important;
  }

  .lm-submenu-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    right: 18px !important;
    top: 36px !important;
    width: 54px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(113,34,137,.18) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #712289 !important;
    box-shadow: 0 12px 28px rgba(113,34,137,.08) !important;
    z-index: 4 !important;
  }

  .lm-submenu-toggle span[aria-hidden="true"] {
    display: block !important;
    width: 10px !important;
    height: 10px !important;
    border-right: 2px solid currentColor !important;
    border-bottom: 2px solid currentColor !important;
    border-left: 0 !important;
    border-top: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 0 !important;
    color: transparent !important;
    transform: translateY(-2px) rotate(45deg) !important;
    transition: transform .22s ease !important;
  }

  .lm-menu li.is-submenu-open > .lm-submenu-toggle span[aria-hidden="true"] {
    transform: translateY(2px) rotate(225deg) !important;
    margin: 0 !important;
  }

  .lm-menu li.is-submenu-open > .lm-submenu-toggle {
    background: #fff !important;
    box-shadow: 0 12px 28px rgba(113,34,137,.08) !important;
  }

  .lm-menu > li.current-menu-item > a,
  .lm-menu > li.current-menu-ancestor > a,
  .lm-menu > li:hover > a,
  .lm-menu > li:focus-within > a {
    padding-left: 32px !important;
  }
}

/* ===== v83 mobile menu: visible purple chevrons + stable arrow toggle ===== */
@media (max-width: 980px) {
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children {
    position: relative !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li.menu-item-has-children > a,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li.menu-item-has-children > a {
    padding-right: 92px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle {
    position: absolute !important;
    right: 18px !important;
    top: 29px !important;
    transform: translateY(-50%) !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(113,34,137,.20) !important;
    background: #fff !important;
    color: #712289 !important;
    box-shadow: 0 12px 28px rgba(113,34,137,.08) !important;
    cursor: pointer !important;
    z-index: 20 !important;
    pointer-events: auto !important;
    appearance: none !important;
    -webkit-appearance: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle span[aria-hidden="true"] {
    display: block !important;
    width: 13px !important;
    height: 13px !important;
    border-right: 3px solid #712289 !important;
    border-bottom: 3px solid #712289 !important;
    border-left: 0 !important;
    border-top: 0 !important;
    background: transparent !important;
    color: #712289 !important;
    box-shadow: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
    transform: translateY(-2px) rotate(45deg) !important;
    transition: transform .22s ease !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.is-submenu-open > .lm-submenu-toggle span[aria-hidden="true"] {
    transform: translateY(2px) rotate(225deg) !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle:focus-visible {
    outline: 2px solid #712289 !important;
    outline-offset: 3px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu .lm-submenu-toggle {
    top: 25px !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
  }
}

/* === SKYADS v84: mobile menu no hover frame + reliable purple chevron accordion === */
@media (max-width: 980px) {
  html body .lm-site-header .lm-nav-panel .lm-menu > li,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li {
    overflow: visible !important;
  }

  /* Remove the purple focus/hover frame from the row itself. Keep only the soft current background. */
  html body .lm-site-header .lm-nav-panel .lm-menu > li:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu > li:focus-within,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.is-submenu-open,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-item,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-ancestor,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-parent {
    outline: 0 !important;
    box-shadow: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li > a:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu > li > a:focus,
  html body .lm-site-header .lm-nav-panel .lm-menu > li > a:focus-visible,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-item > a,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-ancestor > a,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-parent > a {
    outline: 0 !important;
    box-shadow: none !important;
    border-color: transparent !important;
  }

  /* The active/current visual state is a full soft row, not a double purple frame. */
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-item > a,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-ancestor > a,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-parent > a {
    background: rgba(113, 34, 137, .07) !important;
    border: 1px solid rgba(113, 34, 137, .12) !important;
    border-radius: 24px !important;
  }

  /* Arrow: visible purple chevron inside the white circle, no inherited icon/font quirks. */
  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle,
  html body .lm-site-header .lm-nav-panel .lm-menu > li > .lm-submenu-toggle,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li > .lm-submenu-toggle {
    position: absolute !important;
    right: 18px !important;
    top: 29px !important;
    transform: translateY(-50%) !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(113, 34, 137, .20) !important;
    background: #fff !important;
    color: #712289 !important;
    box-shadow: 0 12px 28px rgba(113, 34, 137, .08) !important;
    cursor: pointer !important;
    z-index: 30 !important;
    pointer-events: auto !important;
    font-size: 0 !important;
    line-height: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li > .lm-submenu-toggle {
    top: 25px !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle::before,
  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle::after {
    content: none !important;
    display: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle span[aria-hidden="true"] {
    display: block !important;
    width: 13px !important;
    height: 13px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-right: 4px solid #712289 !important;
    border-bottom: 4px solid #712289 !important;
    border-left: 0 !important;
    border-top: 0 !important;
    background: transparent !important;
    color: transparent !important;
    box-shadow: none !important;
    transform: translateY(-2px) rotate(45deg) !important;
    transition: transform .22s ease !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.is-submenu-open > .lm-submenu-toggle span[aria-hidden="true"] {
    transform: translateY(2px) rotate(225deg) !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle:focus,
  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle:focus-visible,
  html body .lm-site-header .lm-nav-panel .lm-submenu-toggle:hover {
    outline: 0 !important;
    border-color: rgba(113, 34, 137, .20) !important;
    box-shadow: 0 12px 28px rgba(113, 34, 137, .08) !important;
  }

  /* Closed/open states controlled only by .is-submenu-open. */
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children:not(.is-submenu-open) > ul.sub-menu {
    display: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open > ul.sub-menu {
    display: block !important;
  }
}

/* === SKYADS v85: mobile menu no arrow hover frame + nested accordion stays open === */
@media (max-width: 980px) {
  /* Remove every hover/focus/current purple frame/glow around the accordion circle. */
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle:focus,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle:focus-visible,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open > .lm-submenu-toggle,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.current-menu-item > .lm-submenu-toggle,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.current-menu-ancestor > .lm-submenu-toggle,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.current-menu-parent > .lm-submenu-toggle {
    outline: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
    border-color: rgba(113, 34, 137, .18) !important;
    background: #fff !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle::before,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle::after {
    content: none !important;
    display: none !important;
    box-shadow: none !important;
  }

  /* Remove frame/glow from hovered/open category rows. Keep only the flat active background. */
  html body .lm-site-header .lm-nav-panel .lm-menu > li > a,
  html body .lm-site-header .lm-nav-panel .lm-menu > li > a:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu > li > a:focus,
  html body .lm-site-header .lm-nav-panel .lm-menu > li > a:focus-visible,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.is-submenu-open > a,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-item > a,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-ancestor > a,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-parent > a {
    outline: 0 !important;
    box-shadow: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li:hover > a:not(:active),
  html body .lm-site-header .lm-nav-panel .lm-menu > li:focus-within > a:not(:active) {
    border-color: transparent !important;
    box-shadow: none !important;
  }

  /* Only the chevron rotates; nested submenu opening must not collapse ancestors. */
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open > ul.sub-menu {
    display: block !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children:not(.is-submenu-open) > ul.sub-menu {
    display: none !important;
  }
}

/* === SKYADS v86: restore single product layout + non-layout sticky mandalas ===
   v76 made decorative pseudo-elements participate in the product grid flow on
   some browsers, pushing the gallery/summary out of alignment. These rules keep
   mandalas as viewport decoration only, so they do not affect the product grid. */
html body.single-product .lm-product-page,
html body.single-product .lm-product-shell,
html body.single-product .lm-product-top,
html body.single-product .lm-product-description-full {
  overflow: visible !important;
  clip-path: none !important;
  contain: none !important;
  content-visibility: visible !important;
}

html body.single-product .lm-product-shell {
  width: var(--container) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

html body.single-product .lm-product-top {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr) !important;
  gap: 48px !important;
  align-items: start !important;
  position: relative !important;
  isolation: isolate !important;
  min-height: 0 !important;
}

html body.single-product .lm-product-gallery-col,
html body.single-product .lm-product-summary-col {
  min-width: 0 !important;
  position: relative !important;
  z-index: 2 !important;
}

/* Left mandala for the gallery/top area. Fixed positioning means it never
   becomes a grid item and never changes the product layout. */
html body.single-product .lm-product-top::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 52vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin: 0 !important;
  z-index: -3 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  opacity: .22 !important;
  transform: translateZ(0) !important;
}

html body.single-product .lm-product-top::after {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
}

/* Right mandala only when the description section is in view. Hidden by default
   so the product top never shows two mandalas. */
html body.single-product .lm-product-description-full::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: auto !important;
  display: none !important;
  width: 52vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin: 0 !important;
  z-index: -3 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: auto 100vh !important;
  opacity: .20 !important;
  transform: translateZ(0) !important;
}

html body.single-product .lm-product-description-full::after {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
}

html body.single-product.lm-product-description-active .lm-product-top::before {
  display: none !important;
}

html body.single-product.lm-product-description-active .lm-product-description-full::before {
  display: block !important;
}

html body.single-product .lm-product-top > *,
html body.single-product .lm-product-description-full > * {
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 980px) {
  html body.single-product .lm-product-shell {
    width: min(var(--container), calc(100% - 48px)) !important;
    max-width: min(var(--container), calc(100% - 48px)) !important;
  }

  html body.single-product .lm-product-top {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  html body.single-product .lm-product-gallery-sticky,
  html body.single-product .lm-product-summary-sticky {
    position: static !important;
    top: auto !important;
  }

  html body.single-product .lm-product-top::before,
  html body.single-product .lm-product-description-full::before {
    width: 100vw !important;
    background-size: auto 78svh !important;
    opacity: .14 !important;
  }
}

/* === SKYADS v87: mobile menu no purple active highlights + exact nested arrow accordion === */
@media (max-width: 980px) {
  html body .lm-site-header .lm-nav-panel .lm-menu > li,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li,
  html body .lm-site-header .lm-nav-panel .lm-menu > li:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu > li:focus,
  html body .lm-site-header .lm-nav-panel .lm-menu > li:focus-within,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.is-submenu-open,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-item,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-ancestor,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.current-menu-parent,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li:focus,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li:focus-within,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li.is-submenu-open,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li.current-menu-item,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li.current-menu-ancestor,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li.current-menu-parent {
    background: transparent !important;
    border-color: rgba(113, 34, 137, .10) !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu a,
  html body .lm-site-header .lm-nav-panel .lm-menu a:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu a:focus,
  html body .lm-site-header .lm-nav-panel .lm-menu a:focus-visible,
  html body .lm-site-header .lm-nav-panel .lm-menu li.is-submenu-open > a,
  html body .lm-site-header .lm-nav-panel .lm-menu li.current-menu-item > a,
  html body .lm-site-header .lm-nav-panel .lm-menu li.current-menu-ancestor > a,
  html body .lm-site-header .lm-nav-panel .lm-menu li.current-menu-parent > a {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li.current-menu-item,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li.current-menu-ancestor,
  html body .lm-site-header .lm-nav-panel .lm-menu .sub-menu > li.current-menu-parent {
    border: 0 !important;
    border-top: 1px solid rgba(113, 34, 137, .07) !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle:focus,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > .lm-submenu-toggle:focus-visible,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open > .lm-submenu-toggle {
    outline: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
    border: 1px solid rgba(113, 34, 137, .18) !important;
    background: #fff !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children:not(.is-submenu-open) > ul.sub-menu {
    display: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open > ul.sub-menu {
    display: block !important;
  }
}


/* === SKYADS v88: mobile nested submenu accordion stability === */
@media (max-width: 980px) {
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children:focus-within,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.current-menu-item,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.current-menu-parent,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.current-menu-ancestor {
    box-shadow: none !important;
    outline: 0 !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > a,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > a:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > a:focus,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open > a {
    box-shadow: none !important;
    outline: 0 !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children:not(.is-submenu-open) > ul.sub-menu {
    display: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open > ul.sub-menu {
    display: block !important;
  }
}


/* === SKYADS v89: mobile nested submenu stability, no parent collapse === */
@media (max-width: 980px) {
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children:not(.is-submenu-open) > ul.sub-menu {
    display: none !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open > ul.sub-menu {
    display: block !important;
    max-height: none !important;
    overflow: visible !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children:focus-within,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.current-menu-item,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.current-menu-parent,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.current-menu-ancestor,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > a,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > a:hover,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children > a:focus,
  html body .lm-site-header .lm-nav-panel .lm-menu li.menu-item-has-children.is-submenu-open > a {
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
  }
}

/* === SKYADS v90: remove arrow from nested 'wałki do jogi' mobile submenu item === */
@media (max-width: 980px) {
  html body .lm-site-header .lm-nav-panel .lm-menu li.lm-no-mobile-submenu-toggle > .lm-submenu-toggle {
    display: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.lm-no-mobile-submenu-toggle > a {
    padding-right: 28px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu li.lm-no-mobile-submenu-toggle > ul.sub-menu {
    display: none !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }
}

/* === v91: footer decorative line transparent === */
.footer-line {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}


/* === v92: global footer section transparent === */
section.footer-section.lm-global-footer,
.footer-section.lm-global-footer,
.lm-global-footer.footer-section {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

section.footer-section.lm-global-footer::before,
section.footer-section.lm-global-footer::after,
.footer-section.lm-global-footer::before,
.footer-section.lm-global-footer::after {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* === SKYADS v93: global footer same layout on every subpage as /joga/ === */
html body section.footer-section.lm-global-footer,
html body .footer-section.lm-global-footer,
html body .lm-global-footer.footer-section {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(72px, 6vw, 96px) 0 32px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

html body section.footer-section.lm-global-footer::before,
html body section.footer-section.lm-global-footer::after,
html body .footer-section.lm-global-footer::before,
html body .footer-section.lm-global-footer::after {
  content: none !important;
  display: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body section.footer-section.lm-global-footer .footer-line,
html body .footer-section.lm-global-footer .footer-line {
  display: block !important;
  width: var(--container) !important;
  max-width: calc(100% - 40px) !important;
  height: 1px !important;
  margin: 0 auto 34px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body section.footer-section.lm-global-footer .lm-footer-shell,
html body .footer-section.lm-global-footer .lm-footer-shell {
  width: var(--container) !important;
  max-width: calc(100% - 40px) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  content-visibility: visible !important;
  contain: none !important;
}

html body section.footer-section.lm-global-footer .footer-grid,
html body .footer-section.lm-global-footer .footer-grid {
  display: grid !important;
  grid-template-columns: minmax(280px, 1.35fr) minmax(160px, .9fr) minmax(180px, .9fr) minmax(190px, .9fr) !important;
  column-gap: clamp(42px, 7vw, 110px) !important;
  row-gap: 36px !important;
  align-items: start !important;
}

html body section.footer-section.lm-global-footer .footer-bottom,
html body .footer-section.lm-global-footer .footer-bottom {
  margin-top: 54px !important;
  padding-top: 24px !important;
  border-top: 1px solid rgba(17, 17, 17, .10) !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
}

html body section.footer-section.lm-global-footer .footer-brand p,
html body .footer-section.lm-global-footer .footer-brand p {
  max-width: 430px !important;
}

html body section.footer-section.lm-global-footer .lm-footer-tagline,
html body .footer-section.lm-global-footer .lm-footer-tagline {
  display: inline-flex !important;
}

@media (max-width: 980px) {
  html body section.footer-section.lm-global-footer,
  html body .footer-section.lm-global-footer {
    padding: 56px 0 26px !important;
  }

  html body section.footer-section.lm-global-footer .lm-footer-shell,
  html body section.footer-section.lm-global-footer .footer-line,
  html body .footer-section.lm-global-footer .lm-footer-shell,
  html body .footer-section.lm-global-footer .footer-line {
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
  }

  html body section.footer-section.lm-global-footer .footer-grid,
  html body .footer-section.lm-global-footer .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  html body section.footer-section.lm-global-footer .footer-bottom,
  html body .footer-section.lm-global-footer .footer-bottom {
    margin-top: 34px !important;
    align-items: flex-start !important;
  }
}

/* === SKYADS v94: mobile responsive visible topbar marquee === */
.lm-topbar.lm-topbar--slider,
.lm-topbar--slider {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: sticky !important;
  top: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  overflow: hidden !important;
  background: var(--accent, #712289) !important;
  color: #fff !important;
  z-index: 2147483000 !important;
}

.lm-topbar.lm-topbar--slider .lm-topbar__slides,
.lm-topbar--slider .lm-topbar__slides,
.lm-topbar--slider .lm-topbar__slides[data-marquee-ready="1"] {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  width: max-content !important;
  max-width: none !important;
  min-width: 100vw !important;
  overflow: visible !important;
}

.lm-topbar--slider .lm-topbar__marquee-group {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  min-width: max-content !important;
  white-space: nowrap !important;
}

.lm-topbar--slider .lm-topbar__slide {
  color: #fff !important;
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}


@media (max-width: 767px) {
  :root {
    --lm-topbar-height: 34px !important;
  }

  .lm-topbar.lm-topbar--slider,
  .lm-topbar--slider,
  .lm-topbar.lm-topbar--slider.is-hidden-at-scroll,
  .lm-topbar--slider.is-hidden-at-scroll {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    line-height: 34px !important;
  }

  .lm-topbar--slider .lm-topbar__slides,
  .lm-topbar--slider .lm-topbar__slides[data-marquee-ready="1"] {
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    animation-duration: var(--lm-topbar-speed, 28s) !important;
  }

  .lm-topbar--slider .lm-topbar__slide,
  .lm-topbar--slider .lm-topbar__slides[data-marquee-ready="1"] .lm-topbar__slide {
    min-height: 34px !important;
    height: 34px !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
    font-size: 13px !important;
    line-height: 34px !important;
    letter-spacing: .035em !important;
    font-weight: 600 !important;
  }

  .lm-topbar--slider .lm-topbar__slides[data-marquee-ready="1"] .lm-topbar__slide::after {
    margin-left: 22px !important;
    opacity: .55 !important;
  }

  body.lm-top-rows-hidden .lm-topbar.lm-topbar--slider,
  body.lm-top-rows-hidden .lm-topbar--slider {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* === SKYADS v96: homepage left sticky mandala === */
html body.home,
html body.front-page {
  position: relative !important;
  overflow-x: hidden !important;
}

html body.home::before,
html body.front-page::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 52vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  pointer-events: none !important;
  z-index: 0 !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left top !important;
  background-size: auto 100vh !important;
  opacity: .22 !important;
  transform: translateZ(0) !important;
}

html body.home .lm-site-header,
html body.home .lm-topbar,
html body.home .lamujer-home,
html body.home .footer-section,
html body.home .lm-global-footer,
html body.front-page .lm-site-header,
html body.front-page .lm-topbar,
html body.front-page .lamujer-home,
html body.front-page .footer-section,
html body.front-page .lm-global-footer {
  position: relative !important;
  z-index: 1 !important;
}

html body.home .hero-slider,
html body.front-page .hero-slider {
  position: relative !important;
  z-index: 2 !important;
}


@media (max-width: 767px) {
  html body.home::before,
  html body.front-page::before {
    width: 100vw !important;
    background-size: auto 92vh !important;
    opacity: .16 !important;
  }
}

/* === SKYADS v96: homepage visible left sticky mandala ===
   Use a real fixed element in front-page.php instead of relying only on body::before,
   because some homepage wrappers/background layers can cover the body pseudo-element. */
html body.home .lamujer-home,
html body.page-template-front-page .lamujer-home,
html body.page-template-template-home .lamujer-home,
html body .lamujer-home {
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
}

html body.home .lm-home-left-mandala,
html body.page-template-front-page .lm-home-left-mandala,
html body.page-template-template-home .lm-home-left-mandala,
html body .lamujer-home > .lm-home-left-mandala {
  display: block !important;
  position: fixed !important;
  top: 0 !important;
  left: -70px !important;
  width: min(640px, 54vw) !important;
  height: 100svh !important;
  min-height: 760px !important;
  pointer-events: none !important;
  z-index: 1 !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left top !important;
  background-size: auto 100% !important;
  opacity: .22 !important;
  transform: translateZ(0) !important;
}

html body.home .lamujer-home > :not(.lm-home-left-mandala),
html body.page-template-front-page .lamujer-home > :not(.lm-home-left-mandala),
html body.page-template-template-home .lamujer-home > :not(.lm-home-left-mandala),
html body .lamujer-home > :not(.lm-home-left-mandala) {
  position: relative !important;
  z-index: 2 !important;
}

html body.home .lm-site-header,
html body.page-template-front-page .lm-site-header,
html body.page-template-template-home .lm-site-header {
  position: sticky !important;
  z-index: 80 !important;
}


@media (max-width: 767px) {
  html body.home .lm-home-left-mandala,
  html body.page-template-front-page .lm-home-left-mandala,
  html body.page-template-template-home .lm-home-left-mandala,
  html body .lamujer-home > .lm-home-left-mandala {
    left: -120px !important;
    width: 560px !important;
    min-height: 100svh !important;
    background-size: auto 92svh !important;
    opacity: .14 !important;
  }
}


/* === SKYADS v97: homepage hero links, mobile support order, bestseller mobile spacing === */
@media (max-width: 768px) {
  html body.home .hero-slider .action-area,
  html body.front-page .hero-slider .action-area {
    gap: 10px !important;
  }

  html body.home .hero-slider .action-area .btn,
  html body.front-page .hero-slider .action-area .btn {
    min-height: 44px !important;
    padding: 12px 18px !important;
    font-size: 11px !important;
    letter-spacing: .075em !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }

  html body.home .hero-slider .action-area .btn-primary,
  html body.front-page .hero-slider .action-area .btn-primary {
    max-width: min(100%, 230px) !important;
  }

  /* On mobile the text block goes directly below the hero, then the image. */
  html body.home .support-section .support-grid,
  html body.front-page .support-section .support-grid {
    display: flex !important;
    flex-direction: column !important;
  }

  html body.home .support-section .support-content,
  html body.front-page .support-section .support-content {
    order: 1 !important;
  }

  html body.home .support-section .support-left,
  html body.front-page .support-section .support-left {
    order: 2 !important;
  }

  /* Bestsellers: smaller space between product title and WooCommerce price on mobile. */
  html body.home .bestsellers-section .best-meta,
  html body.front-page .bestsellers-section .best-meta {
    margin-top: .58rem !important;
  }

  html body.home .bestsellers-section .best-name,
  html body.front-page .bestsellers-section .best-name {
    margin-bottom: .18rem !important;
  }

  html body.home .bestsellers-section .best-price,
  html body.front-page .bestsellers-section .best-price {
    margin-top: 2px !important;
    line-height: 1.18 !important;
  }
}

/* === SKYADS v98: Joga CTA shine, remove home scroll label, mobile hero dots position === */
.lm-joga-cta.btn,
.lm-joga-cta {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

.lm-joga-cta::after {
  content: "" !important;
  position: absolute !important;
  top: -12% !important;
  left: -42% !important;
  width: 34% !important;
  height: 124% !important;
  background: linear-gradient(100deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.12) 20%, rgba(255,255,255,.62) 48%, rgba(255,255,255,.16) 72%, rgba(255,255,255,0) 100%) !important;
  transform: skewX(-22deg) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.lm-joga-cta > *,
.lm-joga-cta {
  z-index: 2 !important;
}

@media (prefers-reduced-motion: no-preference) {
  .lm-joga-cta::after {
    animation: lmButtonShine 2.85s ease-in-out infinite !important;
  }
}

/* Remove the homepage bestsellers scroll hint ("Przesuń" + line). */
html body.home .bestsellers-section .bestsellers-scroll-indicator,
html body.front-page .bestsellers-section .bestsellers-scroll-indicator,
html body.page-template-front-page .bestsellers-section .bestsellers-scroll-indicator {
  display: none !important;
}

/* Homepage mobile hero: keep dots below CTA buttons, never on top of the button. */
@media (max-width: 768px) {
  html body.home .hero-slider .hero-slider-content,
  html body.front-page .hero-slider .hero-slider-content,
  html body.page-template-front-page .hero-slider .hero-slider-content {
    padding-bottom: 96px !important;
  }

  html body.home .hero-slider .hero-slider-ui,
  html body.front-page .hero-slider .hero-slider-ui,
  html body.page-template-front-page .hero-slider .hero-slider-ui {
    inset: auto 0 24px 0 !important;
    height: 28px !important;
    pointer-events: none !important;
    z-index: 4 !important;
  }

  html body.home .hero-slider .hero-dots,
  html body.front-page .hero-slider .hero-dots,
  html body.page-template-front-page .hero-slider .hero-dots {
    top: 50% !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    gap: 9px !important;
    pointer-events: auto !important;
  }

  html body.home .hero-slider .hero-dot,
  html body.front-page .hero-slider .hero-dot,
  html body.page-template-front-page .hero-slider .hero-dot {
    width: 8px !important;
    height: 8px !important;
  }

  html body.home .hero-slider .hero-dot.active,
  html body.front-page .hero-slider .hero-dot.active,
  html body.page-template-front-page .hero-slider .hero-dot.active {
    width: 28px !important;
  }
}

/* === SKYADS v100: exact mobile checkout width + compact form fit === */

@media (max-width: 767px) {
  html body.woocommerce-checkout,
  html body.woocommerce-account {
    overflow-x: hidden !important;
  }

  html body.woocommerce-checkout .lm-checkout-shell,
  html body.woocommerce-checkout .lm-checkout-shell__steps,
  html body.woocommerce-checkout .lm-checkout-steps,
  html body.woocommerce-checkout form.checkout,
  html body.woocommerce-checkout #customer_details,
  html body.woocommerce-checkout .woocommerce-checkout-review-order,
  html body.woocommerce-checkout .woocommerce-billing-fields,
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout .woocommerce-additional-fields,
  html body.woocommerce-checkout .lm-checkout-form-card,
  html body.woocommerce-account .lm-checkout-shell,
  html body.woocommerce-account .lm-checkout-shell__steps,
  html body.woocommerce-account .lm-checkout-steps,
  html body.woocommerce-account .woocommerce,
  html body.woocommerce-account .woocommerce-form-login,
  html body.woocommerce-account .woocommerce-form-register,
  html body.woocommerce-account .lm-auth-card {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps ol,
  html body.woocommerce-account .lm-checkout-steps ol {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__item,
  html body.woocommerce-account .lm-checkout-steps__item {
    min-width: 0 !important;
    width: 100% !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__item a,
  html body.woocommerce-account .lm-checkout-steps__item a {
    width: 100% !important;
    min-width: 0 !important;
    height: 72px !important;
    min-height: 72px !important;
    padding: 8px 4px !important;
    border-radius: 26px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__index,
  html body.woocommerce-account .lm-checkout-steps__index {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 15px !important;
    line-height: 34px !important;
    margin: 0 !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__label,
  html body.woocommerce-account .lm-checkout-steps__label {
    font-size: 12px !important;
    line-height: 1.08 !important;
    letter-spacing: .01em !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
  }

  html body.woocommerce-checkout .lm-guest-checkout-banner,
  html body.woocommerce-account .lm-guest-checkout-banner,
  html body.woocommerce-account .lm-auth-guest {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 22px 20px !important;
    border-radius: 28px !important;
    box-sizing: border-box !important;
  }

  html body.woocommerce-checkout .woocommerce-billing-fields,
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout .woocommerce-additional-fields,
  html body.woocommerce-checkout .lm-checkout-form-card,
  html body.woocommerce-account .woocommerce-form-login,
  html body.woocommerce-account .woocommerce-form-register,
  html body.woocommerce-account .lm-auth-card {
    padding: 22px 18px !important;
    border-radius: 28px !important;
  }

  html body.woocommerce-checkout .woocommerce-billing-fields h3,
  html body.woocommerce-checkout .woocommerce-shipping-fields h3,
  html body.woocommerce-checkout .woocommerce-additional-fields h3,
  html body.woocommerce-checkout .lm-checkout-section-heading h3,
  html body.woocommerce-account .woocommerce h2,
  html body.woocommerce-account .lm-auth-card h2,
  html body.woocommerce-account .lm-checkout-shell__intro h1,
  html body.woocommerce-checkout .lm-checkout-shell__intro h1 {
    font-size: clamp(27px, 7.2vw, 34px) !important;
    line-height: 1.02 !important;
  }

  html body.woocommerce-checkout .form-row,
  html body.woocommerce-account .form-row {
    margin-bottom: 14px !important;
  }

  html body.woocommerce-checkout label,
  html body.woocommerce-account label,
  html body.woocommerce-checkout .form-row label,
  html body.woocommerce-account .form-row label {
    font-size: 14px !important;
    line-height: 1.22 !important;
  }

  html body.woocommerce-checkout input.input-text,
  html body.woocommerce-checkout textarea.input-text,
  html body.woocommerce-checkout select,
  html body.woocommerce-account input.input-text,
  html body.woocommerce-account textarea.input-text,
  html body.woocommerce-account select,
  html body.woocommerce-checkout .select2-container .select2-selection--single {
    min-height: 50px !important;
    height: auto !important;
    padding: 12px 15px !important;
    border-radius: 18px !important;
    font-size: 14px !important;
    line-height: 1.22 !important;
    box-sizing: border-box !important;
  }

  html body.woocommerce-checkout textarea.input-text,
  html body.woocommerce-account textarea.input-text {
    min-height: 96px !important;
  }

  html body.woocommerce-checkout input::placeholder,
  html body.woocommerce-checkout textarea::placeholder,
  html body.woocommerce-account input::placeholder,
  html body.woocommerce-account textarea::placeholder {
    font-size: 14px !important;
    line-height: 1.22 !important;
  }
}

@media (max-width: 389px) {
  html body.woocommerce-checkout .lm-checkout-shell,
  html body.woocommerce-checkout .lm-checkout-shell__steps,
  html body.woocommerce-checkout .lm-checkout-steps,
  html body.woocommerce-checkout form.checkout,
  html body.woocommerce-checkout #customer_details,
  html body.woocommerce-account .lm-checkout-shell,
  html body.woocommerce-account .lm-checkout-shell__steps,
  html body.woocommerce-account .lm-checkout-steps,
  html body.woocommerce-account .woocommerce {
    width: calc(100vw - 22px) !important;
    max-width: calc(100vw - 22px) !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps ol,
  html body.woocommerce-account .lm-checkout-steps ol {
    gap: 6px !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__item a,
  html body.woocommerce-account .lm-checkout-steps__item a {
    height: 66px !important;
    min-height: 66px !important;
    border-radius: 23px !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__index,
  html body.woocommerce-account .lm-checkout-steps__index {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    font-size: 14px !important;
    line-height: 30px !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__label,
  html body.woocommerce-account .lm-checkout-steps__label {
    font-size: 11px !important;
  }
}

/* === SKYADS v106: mobile shell width safety and cart no-overflow === */

@media (max-width: 767px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body .site-shell,
  body .layout-grid,
  body .lm-product-shell,
  body .lm-archive-shell,
  body .lm-blog-shell,
  body .lm-about-shell,
  body .lm-contact-shell,
  body .lm-joga-shell,
  body .lm-checkout-shell,
  body .lm-footer-shell,
  body .woocommerce,
  body .woocommerce-cart-form,
  body .woocommerce-cart-form__contents,
  body .cart-collaterals,
  body .cart_totals,
  body .lm-cart-summary,
  body .lamujer-cart-actions,
  body .lamujer-cart-actions__summary,
  body .lamujer-cart-actions__coupon,
  body .lamujer-cart-actions__checkout {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    overflow-x: clip !important;
  }

  body .lm-archive-page,
  body .lm-product-page,
  body.woocommerce-cart main,
  body.woocommerce-checkout main,
  body.woocommerce-account main {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: clip !important;
  }

  body.woocommerce-cart .shop_table.cart,
  body.woocommerce-cart table.shop_table.cart,
  body.woocommerce-cart .shop_table.cart tbody {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "thumb"
      "name"
      "price"
      "qty"
      "subtotal" !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 18px !important;
    padding: 16px 12px 18px !important;
    border-radius: 28px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-thumbnail {
    grid-area: thumb !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 4px 42px 12px !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-thumbnail a,
  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-thumbnail img {
    max-width: 100% !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-thumbnail img {
    width: 132px !important;
    height: auto !important;
    object-fit: contain !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-name {
    grid-area: name !important;
    padding: 0 42px 12px 0 !important;
    text-align: left !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-name a {
    display: block !important;
    max-width: 100% !important;
    font-size: 18px !important;
    line-height: 1.22 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-price,
  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-quantity,
  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-subtotal {
    display: grid !important;
    grid-template-columns: 72px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 0 !important;
    overflow: visible !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-price > *,
  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-subtotal > * {
    justify-self: end !important;
    max-width: 100% !important;
    text-align: right !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-quantity .quantity,
  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-quantity .quantity.lm-qty-enhanced {
    justify-self: end !important;
    width: 126px !important;
    max-width: 126px !important;
    min-width: 126px !important;
    display: grid !important;
    grid-template-columns: 38px 1fr 38px !important;
    align-items: center !important;
    justify-items: center !important;
    overflow: visible !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-quantity .qty-minus,
  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-quantity .qty-plus,
  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-quantity .lm-qty-btn,
  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-quantity .qty,
  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-quantity input.qty {
    width: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .shop_table.cart tr.woocommerce-cart-form__cart-item > td.product-remove {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: none !important;
  }

  body.woocommerce-cart .lamujer-cart-summary__line,
  body.woocommerce-cart .lamujer-cart-summary__line--total,
  body.woocommerce-cart .lamujer-cart-summary__shipping,
  body.woocommerce-cart .lamujer-cart-shipping-table,
  body.woocommerce-cart .lamujer-cart-shipping-table tbody,
  body.woocommerce-cart .lamujer-cart-shipping-table tr,
  body.woocommerce-cart .lamujer-cart-shipping-table th,
  body.woocommerce-cart .lamujer-cart-shipping-table td,
  body.woocommerce-cart tr.woocommerce-shipping-totals.shipping,
  body.woocommerce-cart tr.woocommerce-shipping-totals.shipping th,
  body.woocommerce-cart tr.woocommerce-shipping-totals.shipping td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.woocommerce-cart ul#shipping_method,
  body.woocommerce-cart ul.woocommerce-shipping-methods {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.woocommerce-cart ul#shipping_method li,
  body.woocommerce-cart ul.woocommerce-shipping-methods li {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 26px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: start !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart ul#shipping_method li input[type="radio"],
  body.woocommerce-cart ul.woocommerce-shipping-methods li input[type="radio"] {
    grid-column: 1 !important;
    width: 22px !important;
    min-width: 22px !important;
    height: 22px !important;
    margin: 4px 0 0 !important;
  }

  body.woocommerce-cart ul#shipping_method li label,
  body.woocommerce-cart ul.woocommerce-shipping-methods li label {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  body.woocommerce-cart .skyads-shipping-method-logo {
    max-width: 44px !important;
    height: auto !important;
    flex: 0 0 auto !important;
  }

  body.woocommerce-cart .skyads-shipping-label-text,
  body.woocommerce-cart .shipping-method-description,
  body.woocommerce-cart .woocommerce-shipping-destination {
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
}

/* === SKYADS v108: mobile cart title alignment === */

@media (max-width: 767px) {
  body.woocommerce-cart main,
  body.woocommerce-cart .site-main {
    padding-top: 5px !important;
  }

  body.woocommerce-cart .entry-header,
  body.woocommerce-cart .page-header,
  body.woocommerce-cart .woocommerce-products-header,
  body.woocommerce-cart .lm-page-header,
  body.woocommerce-cart .lm-cart-header,
  body.woocommerce-cart .lm-checkout-section-heading:first-child {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 5px !important;
    margin-bottom: 22px !important;
    padding-left: 32px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .entry-header .system-label,
  body.woocommerce-cart .entry-header .lm-product-kicker,
  body.woocommerce-cart .entry-header .lm-section-heading span,
  body.woocommerce-cart .page-header .system-label,
  body.woocommerce-cart .page-header .lm-product-kicker,
  body.woocommerce-cart .lm-cart-header .system-label,
  body.woocommerce-cart .lm-cart-header .lm-product-kicker {
    margin-left: 0 !important;
  }

  body.woocommerce-cart h1,
  body.woocommerce-cart h1.entry-title,
  body.woocommerce-cart .page-title,
  body.woocommerce-cart .entry-title {
    margin-left: 0 !important;
    padding-left: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* === SKYADS v109: mobile cart title offset + checkout full-width stability === */

@media (max-width: 767px) {
  /* Cart header: 30px lower than previous version and 5px to the right */
  body.woocommerce-cart main,
  body.woocommerce-cart .site-main {
    padding-top: 35px !important;
  }

  body.woocommerce-cart .entry-header,
  body.woocommerce-cart .page-header,
  body.woocommerce-cart .woocommerce-products-header,
  body.woocommerce-cart .lm-page-header,
  body.woocommerce-cart .lm-cart-header,
  body.woocommerce-cart .lm-checkout-section-heading:first-child {
    margin-top: 35px !important;
    padding-left: 37px !important;
    padding-right: 12px !important;
  }

  /* Checkout/order: use the same mobile width discipline as the fixed cart. */
  html body.woocommerce-checkout,
  html body.woocommerce-checkout main,
  html body.woocommerce-checkout .site-main,
  html body.woocommerce-checkout .entry-content,
  html body.woocommerce-checkout .woocommerce,
  html body.woocommerce-checkout .lm-checkout-shell,
  html body.woocommerce-checkout .lm-checkout-shell__intro,
  html body.woocommerce-checkout .lm-checkout-shell__steps,
  html body.woocommerce-checkout .lm-checkout-steps,
  html body.woocommerce-checkout form.checkout,
  html body.woocommerce-checkout #customer_details,
  html body.woocommerce-checkout .col-1,
  html body.woocommerce-checkout .col-2,
  html body.woocommerce-checkout .woocommerce-checkout-review-order,
  html body.woocommerce-checkout .woocommerce-billing-fields,
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout .woocommerce-additional-fields,
  html body.woocommerce-checkout .lm-checkout-form-card,
  html body.woocommerce-checkout .lm-guest-checkout-banner,
  html body.woocommerce-checkout .woocommerce-notices-wrapper,
  html body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  html body.woocommerce-checkout .woocommerce-form-login-toggle {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  html body.woocommerce-checkout .lm-checkout-shell,
  html body.woocommerce-checkout .entry-content,
  html body.woocommerce-checkout .woocommerce {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body.woocommerce-checkout .lm-checkout-shell__intro,
  html body.woocommerce-checkout .lm-checkout-shell__steps,
  html body.woocommerce-checkout form.checkout,
  html body.woocommerce-checkout .woocommerce-notices-wrapper,
  html body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  html body.woocommerce-checkout .woocommerce-form-login-toggle {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body.woocommerce-checkout .lm-checkout-shell__intro {
    padding-left: 26px !important;
    padding-right: 10px !important;
  }

  html body.woocommerce-checkout .lm-checkout-shell__intro h1 {
    max-width: 100% !important;
    font-size: clamp(48px, 14vw, 64px) !important;
    line-height: .95 !important;
    overflow-wrap: normal !important;
  }

  /* Steps must always fit in the viewport. */
  html body.woocommerce-checkout .lm-checkout-steps ol {
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__item,
  html body.woocommerce-checkout .lm-checkout-steps li {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__item a,
  html body.woocommerce-checkout .lm-checkout-steps li a {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 74px !important;
    min-height: 74px !important;
    padding: 8px 2px !important;
    border-radius: 24px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__index {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    font-size: 14px !important;
    line-height: 32px !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__label {
    font-size: 12px !important;
    line-height: 1.05 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: clip !important;
  }

  /* Notices and coupon rows should not widen the checkout. */
  html body.woocommerce-checkout .woocommerce-info,
  html body.woocommerce-checkout .woocommerce-message,
  html body.woocommerce-checkout .woocommerce-error,
  html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
  html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 16px 18px !important;
    box-sizing: border-box !important;
    border-radius: 24px !important;
    overflow-wrap: anywhere !important;
  }

  /* Checkout boxes full width, but internal text/fields compact enough for real phone input. */
  html body.woocommerce-checkout .woocommerce-billing-fields,
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout .woocommerce-additional-fields,
  html body.woocommerce-checkout .lm-checkout-form-card,
  html body.woocommerce-checkout .woocommerce-checkout-review-order,
  html body.woocommerce-checkout #order_review,
  html body.woocommerce-checkout #payment,
  html body.woocommerce-checkout .woocommerce-checkout-payment {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body.woocommerce-checkout .form-row,
  html body.woocommerce-checkout p.form-row,
  html body.woocommerce-checkout .woocommerce-input-wrapper,
  html body.woocommerce-checkout input.input-text,
  html body.woocommerce-checkout textarea.input-text,
  html body.woocommerce-checkout select,
  html body.woocommerce-checkout .select2-container,
  html body.woocommerce-checkout .select2-container .select2-selection--single {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  html body.woocommerce-checkout input.input-text,
  html body.woocommerce-checkout textarea.input-text,
  html body.woocommerce-checkout select,
  html body.woocommerce-checkout .select2-container .select2-selection--single {
    min-height: 48px !important;
    padding: 11px 14px !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    border-radius: 18px !important;
  }

  html body.woocommerce-checkout label,
  html body.woocommerce-checkout .form-row label {
    font-size: 14px !important;
    line-height: 1.2 !important;
  }

  html body.woocommerce-checkout input::placeholder,
  html body.woocommerce-checkout textarea::placeholder {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }
}

@media (max-width: 389px) {
  html body.woocommerce-checkout .lm-checkout-steps ol {
    gap: 4px !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__item a,
  html body.woocommerce-checkout .lm-checkout-steps li a {
    height: 68px !important;
    min-height: 68px !important;
    border-radius: 22px !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__index {
    width: 29px !important;
    height: 29px !important;
    min-width: 29px !important;
    font-size: 13px !important;
    line-height: 29px !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__label {
    font-size: 11px !important;
  }

  html body.woocommerce-checkout .woocommerce-billing-fields,
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout .woocommerce-additional-fields,
  html body.woocommerce-checkout .lm-checkout-form-card,
  html body.woocommerce-checkout .woocommerce-checkout-review-order,
  html body.woocommerce-checkout #order_review,
  html body.woocommerce-checkout #payment,
  html body.woocommerce-checkout .woocommerce-checkout-payment {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* === SKYADS v110: mobile checkout hard containment, no right clipping === */

@media (max-width: 767px) {
  html,
  body,
  html body.woocommerce-checkout {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  html body.woocommerce-checkout *,
  html body.woocommerce-checkout *::before,
  html body.woocommerce-checkout *::after {
    box-sizing: border-box !important;
  }

  /* Shells may not be narrower/offset or wider than viewport. */
  html body.woocommerce-checkout main,
  html body.woocommerce-checkout .site-main,
  html body.woocommerce-checkout .entry-content,
  html body.woocommerce-checkout .woocommerce,
  html body.woocommerce-checkout .lm-checkout-shell,
  html body.woocommerce-checkout .lm-checkout-page,
  html body.woocommerce-checkout .lm-checkout-wrapper,
  html body.woocommerce-checkout .lm-checkout-layout,
  html body.woocommerce-checkout form.checkout,
  html body.woocommerce-checkout #customer_details,
  html body.woocommerce-checkout .woocommerce-checkout-review-order,
  html body.woocommerce-checkout #order_review {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    overflow-x: hidden !important;
  }

  /* All actual visible checkout blocks keep safe gutters and must fit fully. */
  html body.woocommerce-checkout .lm-checkout-shell__intro,
  html body.woocommerce-checkout .lm-checkout-shell__steps,
  html body.woocommerce-checkout .lm-checkout-steps,
  html body.woocommerce-checkout .woocommerce-notices-wrapper,
  html body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  html body.woocommerce-checkout .woocommerce-form-login-toggle,
  html body.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup,
  html body.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup-checkout,
  html body.woocommerce-checkout #customer_details > .col-1,
  html body.woocommerce-checkout #customer_details > .col-2,
  html body.woocommerce-checkout .woocommerce-billing-fields,
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout .woocommerce-additional-fields,
  html body.woocommerce-checkout .woocommerce-checkout-review-order > *,
  html body.woocommerce-checkout #payment,
  html body.woocommerce-checkout .woocommerce-checkout-payment,
  html body.woocommerce-checkout .lm-checkout-delivery-methods {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  html body.woocommerce-checkout .lm-checkout-shell__intro {
    padding-left: 22px !important;
    padding-right: 14px !important;
  }

  html body.woocommerce-checkout .lm-checkout-shell__intro h1 {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  /* Steps: three compact cards, always inside the viewport. */
  html body.woocommerce-checkout .lm-checkout-steps {
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps ol {
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps li,
  html body.woocommerce-checkout .lm-checkout-steps__item {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps a,
  html body.woocommerce-checkout .lm-checkout-steps__item a {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 8px 3px !important;
    border-radius: 24px !important;
    overflow: hidden !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__label {
    font-size: 11.5px !important;
    line-height: 1.05 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: clip !important;
  }

  /* Forms: internal fields use the card width, never the viewport width. */
  html body.woocommerce-checkout .woocommerce-billing-fields,
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout .woocommerce-additional-fields {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
    border-radius: 28px !important;
  }

  html body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  html body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  html body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
  html body.woocommerce-checkout .form-row,
  html body.woocommerce-checkout p.form-row,
  html body.woocommerce-checkout .woocommerce-input-wrapper,
  html body.woocommerce-checkout input.input-text,
  html body.woocommerce-checkout textarea.input-text,
  html body.woocommerce-checkout select,
  html body.woocommerce-checkout .select2-container,
  html body.woocommerce-checkout .select2-container .select2-selection--single {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    float: none !important;
    clear: both !important;
  }

  html body.woocommerce-checkout input.input-text,
  html body.woocommerce-checkout textarea.input-text,
  html body.woocommerce-checkout select,
  html body.woocommerce-checkout .select2-container .select2-selection--single {
    min-height: 48px !important;
    padding: 11px 13px !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    border-radius: 18px !important;
  }

  html body.woocommerce-checkout textarea.input-text {
    min-height: 88px !important;
  }

  html body.woocommerce-checkout label,
  html body.woocommerce-checkout .form-row label {
    font-size: 14px !important;
    line-height: 1.2 !important;
  }

  /* Coupon/login notices cannot create horizontal overflow. */
  html body.woocommerce-checkout .woocommerce-info,
  html body.woocommerce-checkout .woocommerce-message,
  html body.woocommerce-checkout .woocommerce-error {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 14px 16px !important;
    overflow-wrap: anywhere !important;
  }

  html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
  html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 389px) {
  html body.woocommerce-checkout .lm-checkout-shell__intro,
  html body.woocommerce-checkout .lm-checkout-shell__steps,
  html body.woocommerce-checkout .lm-checkout-steps,
  html body.woocommerce-checkout .woocommerce-notices-wrapper,
  html body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  html body.woocommerce-checkout .woocommerce-form-login-toggle,
  html body.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup,
  html body.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup-checkout,
  html body.woocommerce-checkout #customer_details > .col-1,
  html body.woocommerce-checkout #customer_details > .col-2,
  html body.woocommerce-checkout .woocommerce-billing-fields,
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout .woocommerce-additional-fields,
  html body.woocommerce-checkout .woocommerce-checkout-review-order > *,
  html body.woocommerce-checkout #payment,
  html body.woocommerce-checkout .woocommerce-checkout-payment,
  html body.woocommerce-checkout .lm-checkout-delivery-methods {
    width: calc(100vw - 12px) !important;
    max-width: calc(100vw - 12px) !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps ol {
    gap: 4px !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__label {
    font-size: 10.5px !important;
  }
}

/* === SKYADS v111: mobile checkout form should not clip or self-scroll === */

@media (max-width: 767px) {
  html,
  body,
  body.woocommerce-checkout {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body.woocommerce-checkout .lm-checkout-shell,
  body.woocommerce-checkout .lm-checkout-page,
  body.woocommerce-checkout .lm-checkout-wrapper,
  body.woocommerce-checkout .lm-checkout-layout,
  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2,
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #payment {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: auto !important;
  }

  body.woocommerce-checkout .lm-checkout-shell,
  body.woocommerce-checkout .lm-checkout-page,
  body.woocommerce-checkout .lm-checkout-wrapper,
  body.woocommerce-checkout .lm-checkout-layout,
  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout #customer_details {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
  }

  body.woocommerce-checkout #customer_details {
    display: block !important;
  }

  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2,
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .lm-checkout-delivery-methods,
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-checkout-payment,
  body.woocommerce-checkout .woocommerce-notices-wrapper,
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout .woocommerce-form-login-toggle {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: 12px !important;
    margin-right: 12px !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields {
    padding: 22px 14px !important;
    border-radius: 28px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields h3,
  body.woocommerce-checkout .woocommerce-shipping-fields h3,
  body.woocommerce-checkout .woocommerce-additional-fields h3,
  body.woocommerce-checkout .lm-checkout-section-heading h3 {
    font-size: clamp(30px, 10vw, 42px) !important;
    line-height: 1.03 !important;
    margin-bottom: 22px !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-checkout p.form-row,
  body.woocommerce-checkout .form-row,
  body.woocommerce-checkout .woocommerce-input-wrapper,
  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout select,
  body.woocommerce-checkout .select2-container,
  body.woocommerce-checkout .select2-container .select2-selection--single {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    float: none !important;
    clear: both !important;
  }

  body.woocommerce-checkout p.form-row,
  body.woocommerce-checkout .form-row {
    margin-bottom: 18px !important;
  }

  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout select,
  body.woocommerce-checkout .select2-container .select2-selection--single {
    min-height: 52px !important;
    padding: 12px 14px !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
    border-radius: 20px !important;
  }

  body.woocommerce-checkout label,
  body.woocommerce-checkout .form-row label {
    font-size: 16px !important;
    line-height: 1.25 !important;
  }

  body.woocommerce-checkout .woocommerce-info,
  body.woocommerce-checkout .woocommerce-message,
  body.woocommerce-checkout .woocommerce-error {
    width: auto !important;
    max-width: none !important;
    margin-left: 12px !important;
    margin-right: 12px !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 389px) {
  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2,
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .lm-checkout-delivery-methods,
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-checkout-payment,
  body.woocommerce-checkout .woocommerce-notices-wrapper,
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout .woocommerce-form-login-toggle {
    margin-left: 8px !important;
    margin-right: 8px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

/* === SKYADS v112: mobile checkout shell same stability model as cart === */

@media (max-width: 767px) {
  html,
  body,
  body.woocommerce-checkout {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.woocommerce-checkout .site-shell,
  body.woocommerce-checkout .site-main,
  body.woocommerce-checkout main,
  body.woocommerce-checkout .entry-content,
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-checkout .lm-checkout-shell,
  body.woocommerce-checkout .lm-checkout-shell > *,
  body.woocommerce-checkout .lm-checkout-shell__intro,
  body.woocommerce-checkout .lm-checkout-steps,
  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout form.woocommerce-checkout,
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .woocommerce-checkout-review-order {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  body.woocommerce-checkout .lm-checkout-shell {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #customer_details.col2-set {
    display: block !important;
    float: none !important;
    clear: both !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2,
  body.woocommerce-checkout form.checkout .col-1,
  body.woocommerce-checkout form.checkout .col-2 {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 0 18px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table,
  body.woocommerce-checkout .lm-checkout-delivery-methods,
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
  body.woocommerce-checkout .place-order {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout p.form-row,
  body.woocommerce-checkout .form-row {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout .woocommerce-input-wrapper,
  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout select,
  body.woocommerce-checkout .select2-container,
  body.woocommerce-checkout .select2-selection {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout .select2-selection {
    font-size: 16px !important;
    line-height: 1.25 !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout .woocommerce-info,
  body.woocommerce-checkout .checkout_coupon {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-checkout .lm-checkout-steps ol {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  body.woocommerce-checkout .lm-checkout-steps__item,
  body.woocommerce-checkout .lm-checkout-steps__item a {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* === SKYADS v113: final mobile checkout gutters + no inner column scroll === */

@media (max-width: 767px) {
  html,
  body,
  body.woocommerce-checkout {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.woocommerce-checkout *,
  body.woocommerce-checkout *::before,
  body.woocommerce-checkout *::after {
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout .site-shell,
  body.woocommerce-checkout .site-main,
  body.woocommerce-checkout main,
  body.woocommerce-checkout .entry-content,
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-checkout .lm-checkout-shell,
  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout form.woocommerce-checkout,
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #customer_details.col2-set {
    display: block !important;
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2,
  body.woocommerce-checkout form.checkout .col-1,
  body.woocommerce-checkout form.checkout .col-2 {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
    -webkit-overflow-scrolling: auto !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout .lm-checkout-delivery-methods,
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-checkout-payment,
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout .checkout_coupon,
  body.woocommerce-checkout .woocommerce-notices-wrapper,
  body.woocommerce-checkout .woocommerce-form-login-toggle {
    width: auto !important;
    max-width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    margin-left: 12px !important;
    margin-right: 12px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-input-wrapper,
  body.woocommerce-checkout p.form-row,
  body.woocommerce-checkout .form-row {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout select,
  body.woocommerce-checkout .select2-container,
  body.woocommerce-checkout .select2-selection,
  body.woocommerce-checkout .select2-selection--single {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden !important;
  }

  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout .select2-selection--single {
    min-height: 54px !important;
    padding: 12px 16px !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
    border-radius: 20px !important;
  }

  body.woocommerce-checkout .woocommerce-info,
  body.woocommerce-checkout .woocommerce-message,
  body.woocommerce-checkout .woocommerce-error {
    width: auto !important;
    max-width: calc(100vw - 24px) !important;
    margin-left: 12px !important;
    margin-right: 12px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-checkout .lm-checkout-steps {
    width: auto !important;
    max-width: calc(100vw - 24px) !important;
    margin-left: 12px !important;
    margin-right: 12px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout .lm-checkout-steps ol {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body.woocommerce-checkout .lm-checkout-steps__item,
  body.woocommerce-checkout .lm-checkout-steps__item a {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.woocommerce-checkout #order_review table,
  body.woocommerce-checkout .shop_table,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout #order_review th,
  body.woocommerce-checkout #order_review td {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
}

@media (max-width: 389px) {
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout .lm-checkout-delivery-methods,
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-checkout-payment,
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout .checkout_coupon,
  body.woocommerce-checkout .woocommerce-notices-wrapper,
  body.woocommerce-checkout .woocommerce-form-login-toggle,
  body.woocommerce-checkout .woocommerce-info,
  body.woocommerce-checkout .woocommerce-message,
  body.woocommerce-checkout .woocommerce-error,
  body.woocommerce-checkout .lm-checkout-steps {
    max-width: calc(100vw - 16px) !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
  }
}
/* === SKYADS v114: checkout mobile layout from A to Z ===
   Fixes the real checkout DOM: .lm-checkout-shell > form.checkout > #customer_details + #order_review.
   The checkout page does not use a theme checkout template; it is generated by WooCommerce and wrapped by hooks.
   This block must stay at the very end of the last-loaded CSS file. */

@media (max-width: 767px) {
  html,
  body.woocommerce-checkout {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.woocommerce-checkout,
  body.woocommerce-checkout * ,
  body.woocommerce-checkout *::before,
  body.woocommerce-checkout *::after {
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout .site-shell,
  body.woocommerce-checkout .site-main,
  body.woocommerce-checkout main,
  body.woocommerce-checkout .entry-content,
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-checkout .lm-checkout-shell {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout .lm-checkout-shell {
    --lm-checkout-mobile-gutter: 12px;
    padding-left: var(--lm-checkout-mobile-gutter) !important;
    padding-right: var(--lm-checkout-mobile-gutter) !important;
    padding-top: 28px !important;
    padding-bottom: 54px !important;
  }

  body.woocommerce-checkout .woocommerce {
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
  }

  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout form.woocommerce-checkout {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout .lm-checkout-shell__intro,
  body.woocommerce-checkout .lm-checkout-steps,
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout form.checkout_coupon,
  body.woocommerce-checkout .checkout_coupon,
  body.woocommerce-checkout .woocommerce-notices-wrapper,
  body.woocommerce-checkout .woocommerce-info,
  body.woocommerce-checkout .woocommerce-message,
  body.woocommerce-checkout .woocommerce-error,
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .woocommerce-checkout-review-order {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #customer_details.col2-set {
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    float: none !important;
    clear: both !important;
  }

  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2,
  body.woocommerce-checkout form.checkout .col-1,
  body.woocommerce-checkout form.checkout .col-2 {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 18px 0 !important;
    padding: 24px 18px !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,0.90) !important;
    border: 1px solid rgba(17,17,17,0.08) !important;
    box-shadow: 0 18px 38px rgba(17,17,17,0.055) !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
    -webkit-overflow-scrolling: auto !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
  body.woocommerce-checkout .shipping_address {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout .shipping_address[aria-hidden="true"] {
    display: none !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }

  body.woocommerce-checkout p.form-row,
  body.woocommerce-checkout .form-row,
  body.woocommerce-checkout .form-row-first,
  body.woocommerce-checkout .form-row-last,
  body.woocommerce-checkout .form-row-wide {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  body.woocommerce-checkout .woocommerce-input-wrapper,
  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout select,
  body.woocommerce-checkout .select2-container,
  body.woocommerce-checkout .select2-selection,
  body.woocommerce-checkout .select2-selection--single {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout .select2-selection--single {
    font-size: 16px !important;
    line-height: 1.25 !important;
    min-height: 58px !important;
    padding: 14px 16px !important;
    border-radius: 18px !important;
  }

  body.woocommerce-checkout .lm-checkout-section-heading h3,
  body.woocommerce-checkout #customer_details h3 {
    font-size: clamp(2rem, 10vw, 2.7rem) !important;
    line-height: 1.02 !important;
    margin-bottom: 24px !important;
  }

  body.woocommerce-checkout .lm-checkout-steps ol {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout .lm-checkout-steps__item,
  body.woocommerce-checkout .lm-checkout-steps__item a {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.woocommerce-checkout .lm-checkout-steps__item a {
    min-height: 98px !important;
    padding: 10px 6px !important;
    border-radius: 24px !important;
  }

  body.woocommerce-checkout .woocommerce-info {
    padding: 18px 18px 18px 52px !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .woocommerce-checkout-review-order {
    position: static !important;
    top: auto !important;
    padding: 22px 18px !important;
    border-radius: 24px !important;
  }

  body.woocommerce-checkout #order_review table,
  body.woocommerce-checkout #order_review .shop_table,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table,
  body.woocommerce-checkout .lm-checkout-delivery-methods,
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-checkout-payment,
  body.woocommerce-checkout .payment_methods,
  body.woocommerce-checkout .wc_payment_methods,
  body.woocommerce-checkout .place-order,
  body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
  }

  body.woocommerce-checkout #order_review table,
  body.woocommerce-checkout #order_review th,
  body.woocommerce-checkout #order_review td {
    table-layout: fixed !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  body.woocommerce-checkout .lm-checkout-delivery-methods__item,
  body.woocommerce-checkout #payment .payment_methods > li.wc_payment_method {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
  }
}

/* === SKYADS v115: checkout mobile equal gutters + full page scroll fix ===
   Real DOM: form.checkout > #customer_details(.col-1/.col-2) + #order_review.
   This intentionally uses viewport-based boxes like the mobile cart, so no child column can be wider than the screen. */

@media (max-width: 767px) {
  html,
  body,
  body.woocommerce-checkout {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.woocommerce-checkout,
  body.woocommerce-checkout *,
  body.woocommerce-checkout *::before,
  body.woocommerce-checkout *::after {
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout .site-shell,
  body.woocommerce-checkout .site-main,
  body.woocommerce-checkout main,
  body.woocommerce-checkout .entry-content,
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-checkout .lm-checkout-shell,
  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout form.woocommerce-checkout,
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #customer_details.col2-set {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    grid-template-columns: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    contain: none !important;
    clip-path: none !important;
    -webkit-overflow-scrolling: auto !important;
  }

  body.woocommerce-checkout .lm-checkout-shell {
    padding-top: 30px !important;
    padding-bottom: 56px !important;
  }

  body.woocommerce-checkout .lm-checkout-shell__intro,
  body.woocommerce-checkout .lm-checkout-steps,
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout form.checkout_coupon,
  body.woocommerce-checkout .checkout_coupon,
  body.woocommerce-checkout .woocommerce-notices-wrapper,
  body.woocommerce-checkout .woocommerce-info,
  body.woocommerce-checkout .woocommerce-message,
  body.woocommerce-checkout .woocommerce-error,
  body.woocommerce-checkout #customer_details > .col-1,
  body.woocommerce-checkout #customer_details > .col-2,
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .woocommerce-checkout-review-order {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
  }

  body.woocommerce-checkout #customer_details > .col-1,
  body.woocommerce-checkout #customer_details > .col-2 {
    display: block !important;
    float: none !important;
    clear: both !important;
    padding: 24px 14px !important;
    margin-bottom: 18px !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,0.92) !important;
    border: 1px solid rgba(17,17,17,0.08) !important;
    box-shadow: 0 18px 38px rgba(17,17,17,0.055) !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
  body.woocommerce-checkout .shipping_address,
  body.woocommerce-checkout p.form-row,
  body.woocommerce-checkout .form-row,
  body.woocommerce-checkout .form-row-first,
  body.woocommerce-checkout .form-row-last,
  body.woocommerce-checkout .form-row-wide,
  body.woocommerce-checkout .woocommerce-input-wrapper {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    contain: none !important;
  }

  body.woocommerce-checkout .shipping_address[aria-hidden="true"] {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }

  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout select,
  body.woocommerce-checkout .select2-container,
  body.woocommerce-checkout .select2-selection,
  body.woocommerce-checkout .select2-selection--single {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout textarea.input-text,
  body.woocommerce-checkout .select2-selection--single {
    min-height: 56px !important;
    padding: 13px 14px !important;
    border-radius: 18px !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
  }

  body.woocommerce-checkout #customer_details > .col-1::after,
  body.woocommerce-checkout #customer_details > .col-2::after,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::after,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::after,
  body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper::after {
    content: "" !important;
    display: table !important;
    clear: both !important;
  }

  body.woocommerce-checkout #billing_state_field[style*="display: none"],
  body.woocommerce-checkout #shipping_state_field[style*="display: none"] {
    display: none !important;
  }

  body.woocommerce-checkout .lm-checkout-steps ol {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout .lm-checkout-steps__item,
  body.woocommerce-checkout .lm-checkout-steps__item a {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.woocommerce-checkout .lm-checkout-steps__item a {
    min-height: 96px !important;
    padding: 10px 5px !important;
    border-radius: 24px !important;
  }

  body.woocommerce-checkout .woocommerce-info {
    padding: 18px 18px 18px 52px !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout .woocommerce-checkout-payment,
  body.woocommerce-checkout .lm-checkout-delivery-methods,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table,
  body.woocommerce-checkout .payment_methods,
  body.woocommerce-checkout .wc_payment_methods,
  body.woocommerce-checkout .place-order,
  body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }
}

/* === SKYADS v118: mobile checkout hard alignment to archive header ===
   Base: v115. Fix only the checkout container math: the visible checkout content
   must live inside the same .lm-archive-shell width as .lm-shop-header. */

@media (max-width: 767px) {
  html,
  body,
  body.woocommerce-checkout {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body.woocommerce-checkout,
  body.woocommerce-checkout *,
  body.woocommerce-checkout *::before,
  body.woocommerce-checkout *::after {
    box-sizing: border-box !important;
  }

  /* One source of truth for page width on mobile: shell = header = entry content. */
  html body.woocommerce-checkout .lm-archive-page,
  html body.woocommerce-checkout main,
  html body.woocommerce-checkout .site-main {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: hidden !important;
  }

  html body.woocommerce-checkout .lm-archive-shell {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
  }

  html body.woocommerce-checkout .lm-shop-header,
  html body.woocommerce-checkout .lm-archive-shell > .entry-content,
  html body.woocommerce-checkout .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
  }

  /* Stop any old mobile fixes from making children viewport-wide again. */
  html body.woocommerce-checkout .entry-content > .woocommerce,
  html body.woocommerce-checkout .woocommerce,
  html body.woocommerce-checkout .lm-checkout-shell,
  html body.woocommerce-checkout form.checkout,
  html body.woocommerce-checkout form.woocommerce-checkout,
  html body.woocommerce-checkout #customer_details,
  html body.woocommerce-checkout #customer_details.col2-set,
  html body.woocommerce-checkout #order_review,
  html body.woocommerce-checkout .woocommerce-checkout-review-order,
  html body.woocommerce-checkout #payment,
  html body.woocommerce-checkout .woocommerce-checkout-payment,
  html body.woocommerce-checkout .lm-checkout-delivery-methods {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  html body.woocommerce-checkout .lm-checkout-shell {
    padding-top: 30px !important;
    padding-bottom: 56px !important;
  }

  /* Every visible block stays inside the shell width, not 100vw. */
  html body.woocommerce-checkout .lm-checkout-shell__intro,
  html body.woocommerce-checkout .lm-checkout-steps,
  html body.woocommerce-checkout .woocommerce-notices-wrapper,
  html body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  html body.woocommerce-checkout form.checkout_coupon,
  html body.woocommerce-checkout .checkout_coupon,
  html body.woocommerce-checkout .woocommerce-info,
  html body.woocommerce-checkout .woocommerce-message,
  html body.woocommerce-checkout .woocommerce-error,
  html body.woocommerce-checkout #customer_details > .col-1,
  html body.woocommerce-checkout #customer_details > .col-2,
  html body.woocommerce-checkout #order_review_heading,
  html body.woocommerce-checkout .woocommerce-checkout-review-order-table,
  html body.woocommerce-checkout .payment_methods,
  html body.woocommerce-checkout .wc_payment_methods,
  html body.woocommerce-checkout .place-order,
  html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
  html body.woocommerce-checkout .lm-checkout-delivery-methods__head,
  html body.woocommerce-checkout .lm-checkout-delivery-methods__list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  html body.woocommerce-checkout #customer_details > .col-1,
  html body.woocommerce-checkout #customer_details > .col-2 {
    padding: 24px 14px !important;
    margin-bottom: 18px !important;
  }

  html body.woocommerce-checkout .woocommerce-billing-fields,
  html body.woocommerce-checkout .woocommerce-shipping-fields,
  html body.woocommerce-checkout .woocommerce-additional-fields,
  html body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  html body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  html body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
  html body.woocommerce-checkout .shipping_address,
  html body.woocommerce-checkout p.form-row,
  html body.woocommerce-checkout .form-row,
  html body.woocommerce-checkout .form-row-first,
  html body.woocommerce-checkout .form-row-last,
  html body.woocommerce-checkout .form-row-wide,
  html body.woocommerce-checkout .woocommerce-input-wrapper,
  html body.woocommerce-checkout input.input-text,
  html body.woocommerce-checkout textarea.input-text,
  html body.woocommerce-checkout select,
  html body.woocommerce-checkout .select2-container,
  html body.woocommerce-checkout .select2-selection,
  html body.woocommerce-checkout .select2-selection--single {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    max-height: none !important;
  }

  html body.woocommerce-checkout input.input-text,
  html body.woocommerce-checkout textarea.input-text,
  html body.woocommerce-checkout .select2-selection--single {
    min-height: 56px !important;
    padding: 13px 14px !important;
    border-radius: 18px !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps ol {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__item,
  html body.woocommerce-checkout .lm-checkout-steps__item a {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  html body.woocommerce-checkout .lm-checkout-steps__item a {
    min-height: 96px !important;
    padding: 10px 5px !important;
    border-radius: 24px !important;
  }

  html body.woocommerce-checkout .woocommerce-info {
    padding: 18px 18px 18px 52px !important;
    overflow-wrap: anywhere !important;
  }

  html body.woocommerce-checkout .shipping_address[aria-hidden="true"] {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }
}

/* === SKYADS v119: mobile checkout delivery/payment inner gutters ===
   Keep v118 shell/header alignment, but restore desktop-like inner spacing
   inside the delivery and payment bordered cards on mobile. */

@media (max-width: 767px) {
  html body.woocommerce-checkout .lm-checkout-delivery-methods {
    padding: 22px 16px !important;
    border-radius: 28px !important;
    overflow: visible !important;
  }

  html body.woocommerce-checkout .lm-checkout-delivery-methods__head,
  html body.woocommerce-checkout .lm-checkout-delivery-methods__list {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body.woocommerce-checkout .lm-checkout-delivery-methods__head h3 {
    font-size: 34px !important;
    line-height: 1.05 !important;
    margin: 0 0 18px !important;
    overflow-wrap: normal !important;
  }

  html body.woocommerce-checkout .lm-checkout-delivery-methods__list {
    display: grid !important;
    gap: 12px !important;
  }

  html body.woocommerce-checkout .lm-checkout-delivery-methods__item {
    min-height: 72px !important;
    padding: 14px 16px !important;
    border-radius: 22px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
  }

  html body.woocommerce-checkout .lm-checkout-delivery-methods__label {
    min-width: 0 !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 86px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
  }

  html body.woocommerce-checkout .lm-checkout-delivery-methods__label .skyads-shipping-method-logo {
    max-width: 72px !important;
    max-height: 34px !important;
    object-fit: contain !important;
  }

  html body.woocommerce-checkout .lm-checkout-delivery-methods__name,
  html body.woocommerce-checkout .lm-checkout-delivery-methods__name * {
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-align: right !important;
    font-size: 18px !important;
    line-height: 1.22 !important;
  }

  html body.woocommerce-checkout #payment,
  html body.woocommerce-checkout .woocommerce-checkout-payment {
    padding: 22px 16px !important;
    border-radius: 28px !important;
    overflow: visible !important;
  }

  html body.woocommerce-checkout #payment ul.wc_payment_methods,
  html body.woocommerce-checkout #payment .wc_payment_methods,
  html body.woocommerce-checkout #payment .payment_methods.methods {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method,
  html body.woocommerce-checkout #payment li.wc_payment_method,
  html body.woocommerce-checkout #payment .payment_methods > li {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-radius: 22px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method > label,
  html body.woocommerce-checkout #payment .payment_methods > li > label {
    min-height: 72px !important;
    padding: 14px 16px 14px 60px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    font-size: 18px !important;
    line-height: 1.22 !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method > input[type="radio"],
  html body.woocommerce-checkout #payment .payment_methods > li > input[type="radio"] {
    left: 18px !important;
    top: 36px !important;
  }

  html body.woocommerce-checkout #payment .wc_payment_method > label img,
  html body.woocommerce-checkout #payment .payment_methods > li > label img,
  html body.woocommerce-checkout #payment .payment-methods--logos {
    max-width: 86px !important;
    max-height: 34px !important;
    margin-left: auto !important;
    flex: 0 0 auto !important;
  }
}

/* === SKYADS v120: mobile checkout delivery block spacing from order review ===
   The custom delivery section is rendered directly after the WooCommerce order
   review table, so on mobile it needs its own top gap from that table/card. */

@media (max-width: 767px) {
  html body.woocommerce-checkout #order_review > .shop_table + .lm-checkout-delivery-methods,
  html body.woocommerce-checkout #order_review > table.shop_table.woocommerce-checkout-review-order-table + .lm-checkout-delivery-methods,
  html body.woocommerce-checkout .woocommerce-checkout-review-order .lm-checkout-delivery-methods {
    margin-top: 28px !important;
  }

  html body.woocommerce-checkout .lm-checkout-delivery-methods + #payment,
  html body.woocommerce-checkout .lm-checkout-delivery-methods + .woocommerce-checkout-payment {
    margin-top: 28px !important;
  }
}


/* === SKYADS v125: mobile order review inner spacing ===
   Keep order summary content 20px away from the #order_review edge on mobile. */

@media (max-width: 767px) {
  html body.woocommerce-checkout #order_review.woocommerce-checkout-review-order,
  html body.woocommerce-checkout #order_review {
    padding: 20px !important;
    box-sizing: border-box !important;
  }
}


/* SKYADS v124: carousel product cards use add-to-cart icon instead of wishlist heart. */
.lm-carousel-cart-button {
  width: 58px;
  height: 58px;
  border-radius: 999px;
  border: 2px solid rgba(188, 120, 218, 0.55);
  background: rgba(255, 255, 255, 0.96);
  color: #712289 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(113, 34, 137, 0.08);
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.lm-carousel-cart-button:hover,
.lm-carousel-cart-button:focus-visible {
  transform: translateY(-1px);
  background: #fff;
  box-shadow: 0 14px 28px rgba(113, 34, 137, 0.14);
  outline: none;
}
.lm-carousel-cart-button svg {
  width: 27px;
  height: 27px;
  display: block;
}

@media (max-width: 767px) {
  .lm-carousel-cart-button {
    width: 46px;
    height: 46px;
  }
  .lm-carousel-cart-button svg {
    width: 22px;
    height: 22px;
  }
}


/* SKYADS v126: carousel add-to-cart uses plus sign and suppresses WooCommerce
   "View cart" link so the card does not jump after AJAX add-to-cart. */
.lm-carousel-cart-button .lm-carousel-cart-button__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  font-family: var(--font-sans, Arial, sans-serif);
  font-size: 34px;
  line-height: 1;
  font-weight: 300;
  color: #712289 !important;
  transform: translateY(-1px);
}
.lm-carousel-card-topbar .added_to_cart.wc-forward,
.lm-card-topbar__right .added_to_cart.wc-forward,
.lm-carousel-cart-button + .added_to_cart.wc-forward {
  display: none !important;
  visibility: hidden !important;
}

@media (max-width: 767px) {
  .lm-carousel-cart-button .lm-carousel-cart-button__icon {
    width: 22px !important;
    height: 22px !important;
    font-size: 29px;
  }
}


/* SKYADS v127: carousel promo badge and plus button slightly smaller and equal size. */
.arc-card .lm-carousel-card-topbar .lm-sale-discount-badge,
.arc-card .lm-carousel-card-topbar .onsale,
.arc-card .lm-carousel-card-topbar .lm-carousel-cart-button {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
  border-radius: 50% !important;
}

.arc-card .lm-carousel-card-topbar .lm-sale-discount-badge,
.arc-card .lm-carousel-card-topbar .onsale {
  padding: 0 !important;
  font-size: 13px !important;
  line-height: 1 !important;
}

.arc-card .lm-carousel-card-topbar .lm-carousel-cart-button {
  border-width: 1.5px !important;
}

.arc-card .lm-carousel-card-topbar .lm-carousel-cart-button .lm-carousel-cart-button__icon {
  width: 20px !important;
  height: 20px !important;
  font-size: 28px !important;
  line-height: 1 !important;
}


@media (max-width: 767px) {
  .arc-card .lm-carousel-card-topbar .lm-sale-discount-badge,
  .arc-card .lm-carousel-card-topbar .onsale,
  .arc-card .lm-carousel-card-topbar .lm-carousel-cart-button {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    max-width: 42px !important;
    max-height: 42px !important;
  }

  .arc-card .lm-carousel-card-topbar .lm-sale-discount-badge,
  .arc-card .lm-carousel-card-topbar .onsale {
    font-size: 12px !important;
  }

  .arc-card .lm-carousel-card-topbar .lm-carousel-cart-button .lm-carousel-cart-button__icon {
    width: 18px !important;
    height: 18px !important;
    font-size: 24px !important;
  }
}


/* === SKYADS v128-v130: custom logged-out account auth page === */
body.woocommerce-account:not(.logged-in) main h1:not(.lm-auth__title),
body.woocommerce-account:not(.logged-in) main .entry-header,
body.woocommerce-account:not(.logged-in) main .page-header,
body.woocommerce-account:not(.logged-in) main .woocommerce-products-header {
  display: none !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce {
  max-width: 100% !important;
}


/* Keep the normal site header and menu visible on the account auth page. */
body.woocommerce-account:not(.logged-in) .lm-topbar,
body.woocommerce-account:not(.logged-in) .lm-site-header,
body.woocommerce-account:not(.logged-in) .site-header,
body.woocommerce-account:not(.logged-in) #masthead,
body.woocommerce-account:not(.logged-in) .elementor-location-header {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-notices-wrapper {
  max-width: 760px !important;
  margin: 0 auto 18px !important;
}

.lm-auth {
  width: 100% !important;
  padding: clamp(34px, 6vw, 86px) 20px clamp(60px, 8vw, 110px) !important;
  box-sizing: border-box !important;
}

.lm-auth__shell {
  width: min(100%, 760px) !important;
  margin: 0 auto !important;
}

.lm-auth__panel {
  width: 100% !important;
  box-sizing: border-box !important;
  padding: clamp(28px, 4vw, 46px) !important;
  border: 1px solid rgba(127, 51, 165, .14) !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 24px 70px rgba(92, 42, 111, .11) !important;
}

.lm-auth__panel[hidden] {
  display: none !important;
}

.lm-auth__title {
  margin: 0 0 28px !important;
  color: #171717 !important;
  font-family: var(--font-sans, "DM Sans", Arial, sans-serif) !important;
  font-size: clamp(34px, 4vw, 46px) !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
}

.lm-auth__form,
.lm-auth__form p {
  margin: 0 !important;
}

.lm-auth__form .form-row {
  width: 100% !important;
  padding: 0 !important;
  margin: 0 0 18px !important;
}

.lm-auth__form label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #252525 !important;
  font-family: var(--font-sans, "DM Sans", Arial, sans-serif) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.lm-auth__form input.input-text,
.lm-auth__form input[type="text"],
.lm-auth__form input[type="email"],
.lm-auth__form input[type="tel"],
.lm-auth__form input[type="password"] {
  width: 100% !important;
  height: 58px !important;
  box-sizing: border-box !important;
  border: 1.5px solid rgba(37, 24, 40, .62) !important;
  border-radius: 12px !important;
  background: #fff !important;
  padding: 0 18px !important;
  color: #191919 !important;
  font-family: var(--font-sans, "DM Sans", Arial, sans-serif) !important;
  font-size: 17px !important;
  line-height: 58px !important;
  outline: none !important;
  transition: border-color .18s ease, box-shadow .18s ease !important;
}

.lm-auth__form input:focus {
  border-color: #7f33a5 !important;
  box-shadow: 0 0 0 4px rgba(127, 51, 165, .10) !important;
}

.lm-auth__meta {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 2px 0 24px !important;
}

.lm-auth__meta .woocommerce-form-login__rememberme {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
}

.lm-auth__meta input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  accent-color: #7f33a5 !important;
}

.lm-auth__lost,
.lm-auth__switch-button {
  color: #1f1f1f !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  font-weight: 700 !important;
}

.lm-auth__switch-button {
  appearance: none !important;
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  cursor: pointer !important;
  font: inherit !important;
}

.lm-auth__submit.button,
.lm-auth__submit.woocommerce-button,
.lm-auth__submit.woocommerce-Button {
  width: 100% !important;
  min-height: 58px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #6d2388 0%, #8f46be 52%, #7a35a6 100%) !important;
  color: #fff !important;
  font-family: var(--font-sans, "DM Sans", Arial, sans-serif) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  box-shadow: 0 14px 34px rgba(113, 34, 137, .22) !important;
}

.lm-auth__social {
  width: 100% !important;
  min-height: 58px !important;
  box-sizing: border-box !important;
  margin-top: 16px !important;
  border: 1.5px solid rgba(35, 35, 42, .24) !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #242424 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  text-decoration: none !important;
  font-family: var(--font-sans, "DM Sans", Arial, sans-serif) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
}

.lm-auth__social--plugin {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.lm-auth__google-mark {
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 900 !important;
  font-size: 20px !important;
  color: #4285f4 !important;
  background: #fff !important;
}

.lm-auth__switch {
  margin: 28px 0 0 !important;
  text-align: center !important;
  font-family: var(--font-sans, "DM Sans", Arial, sans-serif) !important;
  font-size: 17px !important;
  color: #1f1f1f !important;
}

.lm-auth__note {
  margin: -2px 0 20px !important;
  color: #333 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}

.lm-auth__form .woocommerce-privacy-policy-text {
  margin: 4px 0 20px !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  color: #343434 !important;
}



.lm-auth__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin: 0 !important;
}

.lm-auth__grid .form-row {
  margin-bottom: 18px !important;
}

@media (max-width: 767px) {
  .lm-auth {
    padding: 28px 14px 62px !important;
  }

  .lm-auth__panel {
    padding: 26px 20px !important;
    border-radius: 24px !important;
  }

  .lm-auth__title {
    font-size: 32px !important;
    margin-bottom: 24px !important;
  }

  .lm-auth__meta {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .lm-auth__grid {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
}


/* === SKYADS v130: account auth cleanup, centered frame, normal header/menu === */
body.woocommerce-account:not(.logged-in) .lm-topbar,
body.woocommerce-account:not(.logged-in) .lm-site-header,
body.woocommerce-account:not(.logged-in) .site-header,
body.woocommerce-account:not(.logged-in) #masthead,
body.woocommerce-account:not(.logged-in) .elementor-location-header {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
}

/* Hide only the page decorative/title area above the auth form, not the site header/menu and not auth headings. */
body.woocommerce-account:not(.logged-in) main .entry-header,
body.woocommerce-account:not(.logged-in) main .page-header,
body.woocommerce-account:not(.logged-in) main .woocommerce-products-header,
body.woocommerce-account:not(.logged-in) .woocommerce-account__page-title,
body.woocommerce-account:not(.logged-in) .page-title:not(.lm-auth__title),
body.woocommerce-account:not(.logged-in) h1.entry-title:not(.lm-auth__title) {
  display: none !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce {
  width: 100% !important;
  max-width: 100% !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce > .lm-auth {
  margin-left: auto !important;
  margin-right: auto !important;
}

.lm-auth {
  width: 100% !important;
  padding: clamp(34px, 6vw, 76px) 20px clamp(60px, 8vw, 110px) !important;
}

.lm-auth__shell {
  width: min(760px, calc(100vw - 40px)) !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  display: flex !important;
  justify-content: center !important;
}

.lm-auth__panel {
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 767px) {
  .lm-auth__shell {
    width: min(100%, calc(100vw - 28px)) !important;
  }
}


/* === SKYADS v131: account auth full width, no archive page header === */
body.woocommerce-account:not(.logged-in) .lm-archive-page > .lm-archive-shell > .lm-shop-header,
body.woocommerce-account:not(.logged-in) .lm-shop-header {
  display: none !important;
}

body.woocommerce-account:not(.logged-in) .lm-archive-page,
body.woocommerce-account:not(.logged-in) .lm-archive-shell,
body.woocommerce-account:not(.logged-in) .entry-content,
body.woocommerce-account:not(.logged-in) .woocommerce,
body.woocommerce-account:not(.logged-in) .woocommerce > .lm-auth {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

body.woocommerce-account:not(.logged-in) .lm-archive-shell {
  padding-left: clamp(16px, 3vw, 40px) !important;
  padding-right: clamp(16px, 3vw, 40px) !important;
}

body.woocommerce-account:not(.logged-in) .entry-content {
  padding: 0 !important;
}

body.woocommerce-account:not(.logged-in) .lm-auth {
  padding: 0 0 clamp(56px, 7vw, 96px) !important;
}

body.woocommerce-account:not(.logged-in) .lm-auth__shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  display: block !important;
}

body.woocommerce-account:not(.logged-in) .lm-auth__panel {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

@media (max-width: 767px) {
  body.woocommerce-account:not(.logged-in) .lm-archive-shell {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}


/* === SKYADS v132: account auth wider by 50 percent and centered === */
body.woocommerce-account:not(.logged-in) .entry-content,
body.woocommerce-account:not(.logged-in) .woocommerce,
body.woocommerce-account:not(.logged-in) .woocommerce > .lm-auth,
body.woocommerce-account:not(.logged-in) #customer_login.lm-auth,
body.woocommerce-account:not(.logged-in) .lm-auth {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

body.woocommerce-account:not(.logged-in) .lm-auth__shell {
  width: min(1140px, calc(100vw - 80px)) !important;
  max-width: 1140px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  justify-content: center !important;
}

body.woocommerce-account:not(.logged-in) .lm-auth__panel {
  width: 100% !important;
  max-width: 1140px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 767px) {
  body.woocommerce-account:not(.logged-in) .lm-auth__shell {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
  }
}


/* === SKYADS v133: account auth truly centered and compact vertical spacing === */
html body.woocommerce-account:not(.logged-in) .lm-archive-page,
html body.woocommerce-account:not(.logged-in) main,
html body.woocommerce-account:not(.logged-in) .site-main,
html body.woocommerce-account:not(.logged-in) .content-area,
html body.woocommerce-account:not(.logged-in) .entry-content,
html body.woocommerce-account:not(.logged-in) .woocommerce {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  min-height: 0 !important;
}

html body.woocommerce-account:not(.logged-in) .lm-archive-shell {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

html body.woocommerce-account:not(.logged-in) .woocommerce > .lm-auth,
html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth,
html body.woocommerce-account:not(.logged-in) .lm-auth {
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  padding: 22px 0 28px !important;
  min-height: 0 !important;
  height: auto !important;
  display: block !important;
  box-sizing: border-box !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__shell {
  width: min(1500px, calc(100vw - 160px)) !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  justify-items: center !important;
  box-sizing: border-box !important;
  transform: none !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__panel {
  width: 100% !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
  padding: 42px 64px 36px !important;
  min-height: 0 !important;
  height: auto !important;
  box-sizing: border-box !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__panel[hidden] {
  display: none !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__title {
  margin-bottom: 24px !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__form {
  padding: 34px 48px 28px !important;
  margin: 0 !important;
  min-height: 0 !important;
  height: auto !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__form .form-row {
  margin-bottom: 16px !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__meta {
  margin: 0 0 20px !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__social {
  margin-top: 14px !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__switch {
  margin: 18px auto 0 !important;
  text-align: center !important;
}

@media (max-width: 1024px) {
  html body.woocommerce-account:not(.logged-in) .lm-auth {
    padding-top: 16px !important;
    padding-bottom: 22px !important;
  }

  html body.woocommerce-account:not(.logged-in) .lm-auth__shell {
    width: calc(100vw - 40px) !important;
    max-width: calc(100vw - 40px) !important;
  }

  html body.woocommerce-account:not(.logged-in) .lm-auth__panel {
    padding: 34px 32px 28px !important;
  }

  html body.woocommerce-account:not(.logged-in) .lm-auth__form {
    padding: 28px 28px 22px !important;
  }
}

@media (max-width: 767px) {
  html body.woocommerce-account:not(.logged-in) .lm-auth {
    padding: 10px 0 16px !important;
  }

  html body.woocommerce-account:not(.logged-in) .lm-auth__shell {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }

  html body.woocommerce-account:not(.logged-in) .lm-auth__panel {
    padding: 24px 16px 20px !important;
    border-radius: 22px !important;
  }

  html body.woocommerce-account:not(.logged-in) .lm-auth__form {
    padding: 22px 14px 18px !important;
  }

  html body.woocommerce-account:not(.logged-in) .lm-auth__switch {
    margin-top: 12px !important;
  }
}


/* === SKYADS v134: account login form 75 percent centered inside frame ===
   Keep the login/register form inside the outer panel, reduce its width, and center it. */
html body.woocommerce-account:not(.logged-in) .lm-auth__panel {
  overflow: hidden !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__form {
  width: 75% !important;
  max-width: 1125px !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__form form,
html body.woocommerce-account:not(.logged-in) .lm-auth__form .woocommerce-form,
html body.woocommerce-account:not(.logged-in) .lm-auth__form .form-row,
html body.woocommerce-account:not(.logged-in) .lm-auth__form p,
html body.woocommerce-account:not(.logged-in) .lm-auth__form input,
html body.woocommerce-account:not(.logged-in) .lm-auth__form button,
html body.woocommerce-account:not(.logged-in) .lm-auth__form .button {
  box-sizing: border-box !important;
  max-width: 100% !important;
}

@media (max-width: 1024px) {
  html body.woocommerce-account:not(.logged-in) .lm-auth__form {
    width: 88% !important;
    max-width: 88% !important;
  }
}

@media (max-width: 767px) {
  html body.woocommerce-account:not(.logged-in) .lm-auth__form {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* === SKYADS v135: auth panel balanced padding and real 75% form width ===
   Bottom spacing is matched to the top spacing and the login/register form is centered at 75% on desktop. */
html body.woocommerce-account:not(.logged-in) .woocommerce > #customer_login.lm-auth,
html body.woocommerce-account:not(.logged-in) .woocommerce > .lm-auth,
html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth,
html body.woocommerce-account:not(.logged-in) .lm-auth {
  min-height: 0 !important;
  height: auto !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
  box-sizing: border-box !important;
}

html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth .lm-auth__shell,
html body.woocommerce-account:not(.logged-in) .lm-auth .lm-auth__shell {
  min-height: 0 !important;
  height: auto !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth .lm-auth__panel,
html body.woocommerce-account:not(.logged-in) .lm-auth .lm-auth__panel {
  min-height: 0 !important;
  height: auto !important;
  padding-top: 48px !important;
  padding-bottom: 48px !important;
  padding-left: clamp(32px, 5vw, 72px) !important;
  padding-right: clamp(32px, 5vw, 72px) !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth .lm-auth__panel > form.lm-auth__form,
html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth form.lm-auth__form,
html body.woocommerce-account:not(.logged-in) .lm-auth .lm-auth__panel > form.lm-auth__form,
html body.woocommerce-account:not(.logged-in) .lm-auth form.lm-auth__form,
html body.woocommerce-account:not(.logged-in) .lm-auth__form {
  width: 75% !important;
  max-width: 75% !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  align-self: center !important;
  box-sizing: border-box !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__form .form-row,
html body.woocommerce-account:not(.logged-in) .lm-auth__form p,
html body.woocommerce-account:not(.logged-in) .lm-auth__form label,
html body.woocommerce-account:not(.logged-in) .lm-auth__form input,
html body.woocommerce-account:not(.logged-in) .lm-auth__form .password-input,
html body.woocommerce-account:not(.logged-in) .lm-auth__form button,
html body.woocommerce-account:not(.logged-in) .lm-auth__form .button,
html body.woocommerce-account:not(.logged-in) .lm-auth__form .lm-auth__submit,
html body.woocommerce-account:not(.logged-in) .lm-auth__form .lm-auth__social {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__form input.input-text,
html body.woocommerce-account:not(.logged-in) .lm-auth__form input[type="text"],
html body.woocommerce-account:not(.logged-in) .lm-auth__form input[type="email"],
html body.woocommerce-account:not(.logged-in) .lm-auth__form input[type="tel"],
html body.woocommerce-account:not(.logged-in) .lm-auth__form input[type="password"],
html body.woocommerce-account:not(.logged-in) .lm-auth__form .password-input,
html body.woocommerce-account:not(.logged-in) .lm-auth__form .lm-auth__submit,
html body.woocommerce-account:not(.logged-in) .lm-auth__form .lm-auth__social {
  width: 100% !important;
}

html body.woocommerce-account:not(.logged-in) .lm-auth__switch {
  margin-top: 18px !important;
  margin-bottom: 0 !important;
}

@media (max-width: 1024px) {
  html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth .lm-auth__panel,
  html body.woocommerce-account:not(.logged-in) .lm-auth .lm-auth__panel {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }

  html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth form.lm-auth__form,
  html body.woocommerce-account:not(.logged-in) .lm-auth form.lm-auth__form,
  html body.woocommerce-account:not(.logged-in) .lm-auth__form {
    width: 88% !important;
    max-width: 88% !important;
  }
}

@media (max-width: 767px) {
  html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth .lm-auth__panel,
  html body.woocommerce-account:not(.logged-in) .lm-auth .lm-auth__panel {
    padding: 28px 18px !important;
  }

  html body.woocommerce-account:not(.logged-in) #customer_login.lm-auth form.lm-auth__form,
  html body.woocommerce-account:not(.logged-in) .lm-auth form.lm-auth__form,
  html body.woocommerce-account:not(.logged-in) .lm-auth__form {
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* === SKYADS v136: business customer fields on registration === */
body.woocommerce-account .lm-auth__business-toggle {
  margin-top: 1rem;
  margin-bottom: .75rem;
}

body.woocommerce-account .lm-auth__business-toggle label {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  font-weight: 800;
  line-height: 1.35;
}

body.woocommerce-account .lm-auth__business-fields[hidden] {
  display: none !important;
}

body.woocommerce-account .lm-auth__business-fields {
  display: block;
  margin-top: .4rem;
}


/* SKYADS v137: purple checkboxes and rounded auth buttons. */
.lm-auth input[type="checkbox"],
#customer_login input[type="checkbox"],
.woocommerce-account input[type="checkbox"],
.woocommerce-checkout input[type="checkbox"] {
  accent-color: #7B1FA2 !important;
}

.lm-auth input[type="checkbox"],
#customer_login input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  border-color: #7B1FA2 !important;
  border-radius: 5px !important;
  box-shadow: none !important;
}

.lm-auth input[type="checkbox"]:focus,
#customer_login input[type="checkbox"]:focus {
  outline: 2px solid rgba(123, 31, 162, 0.22) !important;
  outline-offset: 2px !important;
}

.lm-auth input[type="checkbox"]:checked,
#customer_login input[type="checkbox"]:checked {
  background-color: #7B1FA2 !important;
  border-color: #7B1FA2 !important;
}

.lm-auth .button,
.lm-auth button,
.lm-auth__submit,
#customer_login .button,
#customer_login button,
#customer_login .woocommerce-button,
#customer_login .woocommerce-Button,
.woocommerce-account .lm-auth__submit {
  border-radius: 999px !important;
}

.lm-auth .button,
.lm-auth__submit,
#customer_login .woocommerce-button,
#customer_login .woocommerce-Button {
  overflow: hidden !important;
}

/* SKYADS v138: account addresses 50/50 + business company/NIP display. */
html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-addresses,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.addresses,
html body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: start !important;
  width: 100% !important;
  margin: 28px 0 0 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-addresses::before,
html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-addresses::after,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.addresses::before,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.addresses::after,
html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses::before,
html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses::after {
  content: none !important;
  display: none !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .u-column1,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .u-column2,
html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses .col-1,
html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses .col-2 {
  float: none !important;
  clear: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__header,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin-bottom: 16px !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__header h3,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3 {
  margin: 0 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__edit,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
  white-space: nowrap !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__body,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address {
  display: block !important;
  font-style: italic !important;
  line-height: 1.45 !important;
  margin: 0 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-business-details {
  margin-top: 18px !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(17, 17, 17, 0.10) !important;
  font-style: normal !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-business-details__row {
  display: grid !important;
  grid-template-columns: minmax(110px, .45fr) minmax(0, 1fr) !important;
  gap: 12px !important;
  margin: 0 0 8px !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-business-details__row span {
  color: rgba(25, 25, 25, .62) !important;
  font-weight: 700 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-business-details__row strong {
  color: #1b1b1b !important;
  font-weight: 800 !important;
  overflow-wrap: anywhere !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-business-fieldset {
  border: 1px solid rgba(17,17,17,0.08) !important;
  border-radius: 24px !important;
  padding: 22px !important;
  margin: 28px 0 !important;
  background: rgba(255,255,255,0.72) !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-business-fieldset legend {
  padding: 0 8px !important;
  font-family: var(--lm-font-heading, Georgia, serif) !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
  color: #161616 !important;
}

@media (max-width: 767px) {
  html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-addresses,
  html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.addresses,
  html body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
  html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__header,
  html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
    display: block !important;
  }

  html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__edit,
  html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
    display: inline-block !important;
    margin-top: 10px !important;
  }
}


/* SKYADS v139: newsletter preferences only on Communication endpoint, not Account details. */
.woocommerce-EditAccountForm.edit-account #woo_ml_subscribe_field,
.woocommerce-EditAccountForm.edit-account .shopmagic-optin,
.woocommerce-EditAccountForm.edit-account .lm-native-newsletter-field,
.woocommerce-EditAccountForm.edit-account .lm-native-optin-heading {
  display: none !important;
}
body.woocommerce-edit-account #woo_ml_subscribe_field,
body.woocommerce-edit-account .shopmagic-optin,
body.woocommerce-edit-account .lm-native-newsletter-field,
body.woocommerce-edit-account .lm-native-optin-heading {
  display: none !important;
}
body.woocommerce-account:not(.woocommerce-view-communication-preferences) .woocommerce-EditAccountForm #woo_ml_subscribe_field {
  display: none !important;
}

/* SKYADS v140: logged-in account info panel. */
html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card {
  border: 1px solid rgba(17,17,17,0.08) !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,0.78) !important;
  padding: 26px !important;
  margin: 0 0 30px !important;
  box-shadow: 0 18px 50px rgba(78,15,88,0.07) !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin-bottom: 20px !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__eyebrow {
  margin: 0 0 6px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: rgba(78,15,88,.70) !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card h2 {
  margin: 0 !important;
  font-family: var(--lm-font-heading, Georgia, serif) !important;
  font-size: clamp(26px, 3vw, 38px) !important;
  line-height: 1.12 !important;
  color: #151515 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  border-radius: 999px !important;
  padding: 8px 14px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  background: rgba(113,34,137,.10) !important;
  color: #4E0F58 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__badge.is-individual {
  background: rgba(17,17,17,.06) !important;
  color: rgba(17,17,17,.72) !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px 20px !important;
  margin: 0 0 22px !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__grid p {
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(17,17,17,.07) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.72) !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__grid span {
  display: block !important;
  margin-bottom: 4px !important;
  color: rgba(17,17,17,.58) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__grid strong {
  display: block !important;
  color: #151515 !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  overflow-wrap: anywhere !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__secondary {
  background: rgba(17,17,17,.07) !important;
  color: #151515 !important;
}

@media (max-width: 767px) {
  html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card {
    padding: 20px !important;
    border-radius: 22px !important;
  }

  html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__header {
    display: block !important;
  }

  html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__badge {
    margin-top: 12px !important;
  }

  html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-info-card__grid {
    grid-template-columns: 1fr !important;
  }
}


/* === v148: fix clipped variant/related thumbnails in "Inne wzory i kolory" ===
   The active thumbnail border/outline was being clipped by the grid row. Keep
   enough inner breathing room and allow the current/hover state to render fully. */
.single-product .lm-product-block--variants-under-title,
.single-product .lm-product-block--variants-under-title .lm-variant-mini-grid {
  overflow: visible !important;
}

.single-product .lm-product-block--variants-under-title .lm-variant-mini-grid {
  padding: 10px 0 8px !important;
  margin-top: -2px !important;
}

.single-product .lm-product-block--variants-under-title .lm-variant-mini {
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.single-product .lm-product-block--variants-under-title .lm-variant-mini.is-current,
.single-product .lm-product-block--variants-under-title .lm-variant-mini:hover,
.single-product .lm-product-block--variants-under-title .lm-variant-mini:focus-visible {
  z-index: 2 !important;
}

@media (max-width: 980px) {
  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid {
    padding-top: 10px !important;
    padding-bottom: 12px !important;
  }
}


/* === SKYADS v149: communication newsletter checkbox fallback === */
html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content .lm-v149-newsletter-field,
html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content .lm-native-newsletter-field {
  display: block !important;
  margin: 24px 0 18px !important;
  padding: 0 !important;
}

html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content .lm-v149-newsletter-field h3,
html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content .lm-native-newsletter-field h3 {
  margin: 0 0 12px !important;
}

html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content .lm-v149-newsletter-field label.checkbox,
html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content .lm-native-newsletter-field label.checkbox {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer !important;
}

html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content .lm-v149-newsletter-field input[type="checkbox"],
html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content .lm-native-newsletter-field input[type="checkbox"] {
  accent-color: #7b248c !important;
  flex: 0 0 auto !important;
}

html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content .lm-v149-communication-form .button,
html body.woocommerce-account.woocommerce-view-communication-preferences .woocommerce-MyAccount-content form .button {
  border-radius: 14px !important;
}

/* === SKYADS v150: Communication newsletter checkbox fallback === */
.woocommerce-MyAccount-content .lm-v150-newsletter-field {
  margin: 22px 0 18px !important;
  display: block !important;
}
.woocommerce-MyAccount-content .lm-v150-newsletter-field h3 {
  margin: 0 0 12px !important;
}
.woocommerce-MyAccount-content .lm-v150-newsletter-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer !important;
}
.woocommerce-MyAccount-content .lm-v150-newsletter-label input[type="checkbox"] {
  accent-color: #712289 !important;
}


/* === SKYADS v151: account navigation hover spacing fix === */
body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding: 14px !important;
  overflow: visible !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  overflow: visible !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a {
  margin: 0 !important;
  border-radius: 999px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
  background: rgba(113, 34, 137, .12) !important;
  box-shadow: 0 8px 20px rgba(113, 34, 137, .08) !important;
}

@media (max-width: 900px) {
  body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    gap: 8px !important;
  }
}


/* === SKYADS v152: communication newsletter checkbox === */
.woocommerce-MyAccount-content .lm-communication-newsletter-row {
  margin: 24px 0 18px !important;
}
.woocommerce-MyAccount-content .lm-communication-newsletter-row .checkbox {
  display: inline-flex;
  align-items: flex-start;
  gap: 12px;
  font-weight: 600;
  line-height: 1.35;
}
.woocommerce-MyAccount-content .lm-communication-newsletter-row input[type="checkbox"] {
  accent-color: #7b238e;
  width: 18px;
  height: 18px;
  margin-top: 3px;
  flex: 0 0 auto;
}


/* === SKYADS v153: My Account visual consistency + toggleable communication checkbox === */
body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
  color: #17111c !important;
  font-family: var(--font-sans) !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content h1,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content h2,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content h3,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content legend {
  color: #17111c !important;
  font-family: var(--font-serif) !important;
  line-height: 1.08 !important;
  margin: 0 0 22px !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content h2,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content legend {
  font-size: clamp(1.55rem, 2.2vw, 2.25rem) !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content p,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content address,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content label {
  font-size: clamp(1rem, 1.1vw, 1.08rem) !important;
  line-height: 1.55 !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content a:not(.button) {
  color: #17111c !important;
  text-decoration-thickness: 1.5px !important;
  text-underline-offset: 3px !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content fieldset,
body.woocommerce-account.logged-in .woocommerce-address-fields,
body.woocommerce-account.logged-in .woocommerce-EditAccountForm,
body.woocommerce-account.logged-in .lm-account-info,
body.woocommerce-account.logged-in .lm-communication-newsletter-row,
body.woocommerce-account.logged-in .woocommerce-customer-details,
body.woocommerce-account.logged-in .woocommerce-Addresses .woocommerce-Address {
  border: 1px solid rgba(113,34,137,.14) !important;
  border-radius: 30px !important;
  background: rgba(255,255,255,.72) !important;
  box-shadow: 0 14px 38px rgba(80,31,95,.055) !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content fieldset,
body.woocommerce-account.logged-in .woocommerce-address-fields,
body.woocommerce-account.logged-in .woocommerce-EditAccountForm {
  padding: clamp(18px, 2.2vw, 30px) !important;
}

body.woocommerce-account.logged-in .woocommerce-Addresses {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2.4vw, 34px) !important;
  margin-top: 24px !important;
}

body.woocommerce-account.logged-in .woocommerce-Addresses::before,
body.woocommerce-account.logged-in .woocommerce-Addresses::after {
  content: none !important;
  display: none !important;
}

body.woocommerce-account.logged-in .woocommerce-Addresses .woocommerce-Address {
  float: none !important;
  width: auto !important;
  padding: clamp(18px, 2.2vw, 30px) !important;
  min-width: 0 !important;
}

body.woocommerce-account.logged-in .woocommerce-Address-title {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 16px !important;
}

body.woocommerce-account.logged-in .woocommerce-Address-title h2 {
  margin: 0 !important;
}

body.woocommerce-account.logged-in .woocommerce-Address-title .edit {
  font-weight: 700 !important;
  white-space: nowrap !important;
}

body.woocommerce-account.logged-in .woocommerce table.shop_table,
body.woocommerce-account.logged-in .woocommerce-orders-table,
body.woocommerce-account.logged-in .woocommerce-table {
  width: 100% !important;
  border: 1px solid rgba(113,34,137,.12) !important;
  border-radius: 28px !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  background: rgba(255,255,255,.88) !important;
  box-shadow: 0 14px 38px rgba(80,31,95,.055) !important;
}

body.woocommerce-account.logged-in .woocommerce table.shop_table th,
body.woocommerce-account.logged-in .woocommerce table.shop_table td,
body.woocommerce-account.logged-in .woocommerce-orders-table th,
body.woocommerce-account.logged-in .woocommerce-orders-table td,
body.woocommerce-account.logged-in .woocommerce-table th,
body.woocommerce-account.logged-in .woocommerce-table td {
  border: 0 !important;
  border-bottom: 1px solid rgba(113,34,137,.10) !important;
  padding: 18px 20px !important;
  vertical-align: middle !important;
  text-align: left !important;
  color: #211526 !important;
}

body.woocommerce-account.logged-in .woocommerce table.shop_table th,
body.woocommerce-account.logged-in .woocommerce-orders-table th,
body.woocommerce-account.logged-in .woocommerce-table th {
  background: rgba(113,34,137,.07) !important;
  color: #4E0F58 !important;
  font-weight: 800 !important;
  letter-spacing: .02em !important;
}

body.woocommerce-account.logged-in .woocommerce table.shop_table tr:last-child td,
body.woocommerce-account.logged-in .woocommerce-orders-table tr:last-child td,
body.woocommerce-account.logged-in .woocommerce-table tr:last-child td {
  border-bottom: 0 !important;
}

body.woocommerce-account.logged-in .woocommerce table.shop_table tbody tr:nth-child(even) td,
body.woocommerce-account.logged-in .woocommerce-orders-table tbody tr:nth-child(even) td,
body.woocommerce-account.logged-in .woocommerce-table tbody tr:nth-child(even) td {
  background: rgba(113,34,137,.025) !important;
}

body.woocommerce-account.logged-in .woocommerce button.button,
body.woocommerce-account.logged-in .woocommerce a.button,
body.woocommerce-account.logged-in .woocommerce input.button,
body.woocommerce-account.logged-in .woocommerce .button,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content button[type="submit"],
body.woocommerce-account.logged-in .woocommerce-MyAccount-content input[type="submit"] {
  border: 0 !important;
  border-radius: 999px !important;
  min-height: 52px !important;
  padding: 13px 24px !important;
  background: linear-gradient(135deg, #5d136d 0%, #8735ad 100%) !important;
  color: #fff !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  box-shadow: 0 12px 28px rgba(113,34,137,.18) !important;
  cursor: pointer !important;
}

body.woocommerce-account.logged-in .woocommerce button.button:hover,
body.woocommerce-account.logged-in .woocommerce a.button:hover,
body.woocommerce-account.logged-in .woocommerce input.button:hover,
body.woocommerce-account.logged-in .woocommerce .button:hover,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content button[type="submit"]:hover,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content input[type="submit"]:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 34px rgba(113,34,137,.22) !important;
}

body.woocommerce-account.logged-in .woocommerce input.input-text,
body.woocommerce-account.logged-in .woocommerce textarea,
body.woocommerce-account.logged-in .woocommerce select {
  min-height: 54px !important;
  border: 2px solid rgba(33,21,38,.62) !important;
  border-radius: 14px !important;
  padding: 12px 16px !important;
  background: #fff !important;
  color: #17111c !important;
  box-shadow: none !important;
}

body.woocommerce-account.logged-in .woocommerce input.input-text:focus,
body.woocommerce-account.logged-in .woocommerce textarea:focus,
body.woocommerce-account.logged-in .woocommerce select:focus {
  outline: none !important;
  border-color: #712289 !important;
  box-shadow: 0 0 0 4px rgba(113,34,137,.12) !important;
}

body.woocommerce-account.logged-in .woocommerce input[type="checkbox"] {
  accent-color: #712289 !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  margin: 0 10px 0 0 !important;
  cursor: pointer !important;
}

body.woocommerce-account.logged-in .woocommerce input[type="checkbox"]:not(:disabled) + span,
body.woocommerce-account.logged-in .woocommerce label.checkbox {
  cursor: pointer !important;
}

body.woocommerce-account.logged-in .woocommerce input[type="checkbox"]:disabled {
  opacity: .55 !important;
  cursor: not-allowed !important;
}

body.woocommerce-account.logged-in .lm-communication-newsletter-row {
  display: block !important;
  margin: 20px 0 !important;
  padding: 18px 20px !important;
}

body.woocommerce-account.logged-in .lm-communication-newsletter-row label.checkbox {
  display: inline-flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
  font-weight: 700 !important;
}

body.woocommerce-account.logged-in .lm-communication-newsletter-row input[type="checkbox"] {
  margin-top: 3px !important;
}

@media (max-width: 780px) {
  body.woocommerce-account.logged-in .woocommerce-Addresses {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-account.logged-in .woocommerce table.shop_table,
  body.woocommerce-account.logged-in .woocommerce-orders-table,
  body.woocommerce-account.logged-in .woocommerce-table {
    border-radius: 20px !important;
  }
  body.woocommerce-account.logged-in .woocommerce table.shop_table th,
  body.woocommerce-account.logged-in .woocommerce table.shop_table td,
  body.woocommerce-account.logged-in .woocommerce-orders-table th,
  body.woocommerce-account.logged-in .woocommerce-orders-table td,
  body.woocommerce-account.logged-in .woocommerce-table th,
  body.woocommerce-account.logged-in .woocommerce-table td {
    padding: 14px 12px !important;
  }
}


/* === SKYADS v154: communication newsletter persistence + account spacing refinements === */
body.woocommerce-account.logged-in .woocommerce-EditAccountForm fieldset {
  margin-top: 30px !important;
}

body.woocommerce-account.logged-in .woocommerce-EditAccountForm fieldset legend {
  margin-bottom: 24px !important;
}

body.woocommerce-account.logged-in .woocommerce-Addresses .woocommerce-Address,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address,
html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses .col-1,
html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses .col-2 {
  padding: 20px !important;
}

body.woocommerce-account.logged-in .woocommerce-Address-title,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
  margin-bottom: 14px !important;
  gap: 14px !important;
}

body.woocommerce-account.logged-in .woocommerce-Address-title h2,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3 {
  font-size: clamp(1.25rem, 1.65vw, 1.75rem) !important;
  line-height: 1.12 !important;
}

body.woocommerce-account.logged-in .woocommerce-Address-title .edit,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
  font-size: clamp(.95rem, 1vw, 1.08rem) !important;
  line-height: 1.25 !important;
}

body.woocommerce-account.logged-in .woocommerce-Address address,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address {
  font-size: clamp(.95rem, 1.05vw, 1.08rem) !important;
  line-height: 1.42 !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.woocommerce-account.logged-in .woocommerce-Address address br {
  line-height: 1.42 !important;
}

@media (max-width: 780px) {
  body.woocommerce-account.logged-in .woocommerce-Addresses .woocommerce-Address,
  html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address,
  html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses .col-1,
  html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses .col-2 {
    padding: 18px !important;
  }
}

/* === SKYADS v155: order details address cards + centered buttons === */
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content button.button,
.woocommerce-MyAccount-content input.button,
.woocommerce-MyAccount-content .woocommerce-button,
.woocommerce-MyAccount-content .woocommerce-Button,
.woocommerce-MyAccount-content a.button,
.woocommerce-order-details .button,
.woocommerce-order-details button.button,
.woocommerce-order-details input.button,
.woocommerce-order-details .woocommerce-button,
.woocommerce-order-details .woocommerce-Button,
.woocommerce-customer-details .button,
.woocommerce-customer-details a.button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1.2 !important;
  gap: 8px;
}

.woocommerce-MyAccount-content .woocommerce-customer-details,
.woocommerce-MyAccount-content .woocommerce-order-details,
.woocommerce-MyAccount-content .woocommerce-order-downloads {
  margin-top: 30px !important;
}

.woocommerce-MyAccount-content .woocommerce-customer-details .woocommerce-column__title,
.woocommerce-MyAccount-content .woocommerce-customer-details h2,
.woocommerce-MyAccount-content .woocommerce-order-details__title,
.woocommerce-MyAccount-content .woocommerce-order-downloads__title,
.woocommerce-MyAccount-content section.woocommerce-customer-details > h2 {
  margin: 0 0 18px !important;
  padding: 0 !important;
  font-family: var(--lm-font-heading, inherit);
  font-size: clamp(26px, 2.4vw, 38px) !important;
  line-height: 1.12 !important;
  font-weight: 500 !important;
  color: #17121c !important;
  border: 0 !important;
  position: static !important;
  transform: none !important;
}

.woocommerce-MyAccount-content .woocommerce-customer-details .woocommerce-columns--addresses,
.woocommerce-MyAccount-content .woocommerce-customer-details .woocommerce-columns,
.woocommerce-MyAccount-content .woocommerce-columns--addresses {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;
  margin: 24px 0 0 !important;
}

.woocommerce-MyAccount-content .woocommerce-customer-details .woocommerce-column,
.woocommerce-MyAccount-content .woocommerce-customer-details .woocommerce-column--billing-address,
.woocommerce-MyAccount-content .woocommerce-customer-details .woocommerce-column--shipping-address {
  padding: 24px !important;
  border: 1px solid rgba(116, 38, 135, 0.16) !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 18px 48px rgba(116, 38, 135, 0.08) !important;
  overflow: visible !important;
}

.woocommerce-MyAccount-content .woocommerce-customer-details address,
.woocommerce-MyAccount-content .woocommerce-column address,
.woocommerce-MyAccount-content address {
  display: block !important;
  margin: 0 !important;
  padding: 24px 26px !important;
  border: 1px solid rgba(23, 18, 28, 0.10) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, 0.72) !important;
  box-shadow: none !important;
  font-style: normal !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  color: #17121c !important;
  min-height: auto !important;
  overflow: hidden !important;
}

.woocommerce-MyAccount-content .woocommerce-customer-details address p,
.woocommerce-MyAccount-content .woocommerce-customer-details address .woocommerce-customer-details--phone,
.woocommerce-MyAccount-content .woocommerce-customer-details address .woocommerce-customer-details--email,
.woocommerce-MyAccount-content address .woocommerce-customer-details--phone,
.woocommerce-MyAccount-content address .woocommerce-customer-details--email {
  margin: 12px 0 0 !important;
  padding: 0 !important;
  font-size: 17px !important;
  line-height: 1.45 !important;
  color: #17121c !important;
}

.woocommerce-MyAccount-content .woocommerce-customer-details address .woocommerce-customer-details--phone::before,
.woocommerce-MyAccount-content .woocommerce-customer-details address .woocommerce-customer-details--email::before,
.woocommerce-MyAccount-content address .woocommerce-customer-details--phone::before,
.woocommerce-MyAccount-content address .woocommerce-customer-details--email::before {
  color: #5d146f !important;
  margin-right: 10px !important;
  transform: translateY(2px);
}

.woocommerce-MyAccount-content .woocommerce-order-overview,
.woocommerce-MyAccount-content .woocommerce-table,
.woocommerce-MyAccount-content table.shop_table {
  border: 1px solid rgba(116, 38, 135, 0.16) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 18px 48px rgba(116, 38, 135, 0.08) !important;
  overflow: hidden !important;
}

.woocommerce-MyAccount-content table.shop_table th,
.woocommerce-MyAccount-content table.shop_table td {
  padding: 16px 18px !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  vertical-align: middle !important;
}

@media (max-width: 900px) {
  .woocommerce-MyAccount-content .woocommerce-customer-details .woocommerce-columns--addresses,
  .woocommerce-MyAccount-content .woocommerce-customer-details .woocommerce-columns,
  .woocommerce-MyAccount-content .woocommerce-columns--addresses {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .woocommerce-MyAccount-content .woocommerce-customer-details .woocommerce-column__title,
  .woocommerce-MyAccount-content .woocommerce-customer-details h2,
  .woocommerce-MyAccount-content .woocommerce-order-details__title,
  .woocommerce-MyAccount-content .woocommerce-order-downloads__title,
  .woocommerce-MyAccount-content section.woocommerce-customer-details > h2 {
    font-size: 28px !important;
  }

  .woocommerce-MyAccount-content .woocommerce-customer-details address,
  .woocommerce-MyAccount-content .woocommerce-column address,
  .woocommerce-MyAccount-content address {
    padding: 20px !important;
    font-size: 16px !important;
  }
}

/* === SKYADS v156: account address cards responsive edit link + address padding === */
html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .u-column1,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .u-column2,
html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses .col-1,
html body.woocommerce-account .woocommerce-MyAccount-content .col2-set.addresses .col-2 {
  box-sizing: border-box !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__header,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
  min-width: 0 !important;
  gap: 12px !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__header h3,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3 {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__edit,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
  flex: 0 1 auto !important;
  max-width: 48% !important;
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  text-align: right !important;
  font-size: clamp(12px, 1.1vw, 14px) !important;
  line-height: 1.25 !important;
}

html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__body,
html body.woocommerce-account .woocommerce-Address address.lm-account-address-card__body,
html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 20px !important;
  font-size: clamp(13px, 1.25vw, 15px) !important;
  line-height: 1.5 !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

@media (max-width: 767px) {
  html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__edit,
  html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
    max-width: 100% !important;
    text-align: left !important;
    font-size: 13px !important;
  }

  html body.woocommerce-account .woocommerce-MyAccount-content .lm-account-address-card__body,
  html body.woocommerce-account .woocommerce-Address address.lm-account-address-card__body,
  html body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address {
    padding: 20px !important;
    font-size: clamp(12px, 3.6vw, 14px) !important;
  }
}


/* === SKYADS v157: hide Downloads item in customer account menu === */
body.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads {
  display: none !important;
}


/* === SKYADS v158: show product-section mandala on product tag archives ===
   Tag archive pages use the same product grid layout as category archives, so they
   need the same left mandala around products and the right mandala for the archive description. */
html body.tax-product_tag .lm-archive-page,
html body.tax-product_tag .lm-archive-shell,
html body.tax-product_tag .lm-category-products-mandala-zone,
html body.tax-product_tag .lm-archive-description-full {
  overflow: visible !important;
  clip-path: none !important;
  contain: none !important;
  content-visibility: visible !important;
}

html body.tax-product_tag .lm-archive-page,
html body.tax-product_tag .lm-archive-shell {
  position: relative !important;
  isolation: isolate !important;
}

html body.tax-product_tag .lm-category-products-mandala-zone,
html body.tax-product_tag .lm-archive-description-full {
  position: relative !important;
  isolation: auto !important;
  z-index: auto !important;
  background: transparent !important;
}

html body.tax-product_tag .lm-category-products-mandala-zone::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/05/mandala-lewa.png') !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: auto 100vh !important;
  background-attachment: fixed !important;
  opacity: .24 !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

html body.tax-product_tag .lm-archive-description-full::before {
  content: "" !important;
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100svh !important;
  margin: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background-image: url('https://lamujer1.skyads.pl/wp-content/uploads/2026/04/Projekt-bez-nazwy-14.png') !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: auto 100vh !important;
  background-attachment: fixed !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateZ(0) !important;
  will-change: transform !important;
}

html body.tax-product_tag .lm-category-products-mandala-zone > *,
html body.tax-product_tag .lm-archive-description-full > *,
html body.tax-product_tag .lm-shop-header,
html body.tax-product_tag .lm-archive-filters,
html body.tax-product_tag .lm-archive-toolbar,
html body.tax-product_tag .lm-archive-grid,
html body.tax-product_tag .lm-archive-description-full .lm-section-heading,
html body.tax-product_tag .lm-archive-description-full .lm-description-content {
  position: relative !important;
  z-index: 1 !important;
}

html body.tax-product_tag.lm-category-description-active .lm-archive-description-full::before {
  opacity: .24 !important;
  visibility: visible !important;
}

html body.tax-product_tag.lm-category-description-active .lm-category-products-mandala-zone::before {
  opacity: 0 !important;
  visibility: hidden !important;
}

@media (max-width: 1024px) {
  html body.tax-product_tag .lm-category-products-mandala-zone::before,
  html body.tax-product_tag .lm-archive-description-full::before {
    background-size: auto 92svh !important;
  }
  html body.tax-product_tag .lm-category-products-mandala-zone::before { opacity: .20 !important; }
  html body.tax-product_tag.lm-category-description-active .lm-archive-description-full::before { opacity: .20 !important; }
}

@media (max-width: 768px) {
  html body.tax-product_tag .lm-category-products-mandala-zone::before,
  html body.tax-product_tag .lm-archive-description-full::before {
    background-size: auto 78svh !important;
  }
  html body.tax-product_tag .lm-category-products-mandala-zone::before { opacity: .16 !important; }
  html body.tax-product_tag.lm-category-description-active .lm-archive-description-full::before { opacity: .16 !important; }
}

/* === SKYADS v159: scalable desktop header menu ===
   Keep desktop menu readable on smaller laptop widths and prevent submenu arrows
   from overlapping adjacent labels. */
@media (min-width: 981px) {
  .lm-site-header__inner {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    column-gap: clamp(10px, 1.1vw, 22px) !important;
  }

  .lm-logo-image {
    height: clamp(30px, 2.2vw, 38px) !important;
    max-width: clamp(128px, 11vw, 220px) !important;
  }

  .lm-nav-panel,
  .lm-main-nav {
    min-width: 0 !important;
    overflow: visible !important;
  }

  .lm-menu {
    min-width: 0 !important;
    justify-content: center !important;
    gap: clamp(3px, 0.45vw, 12px) !important;
    flex-wrap: nowrap !important;
  }

  .lm-menu > li {
    min-width: 0 !important;
    flex: 0 1 auto !important;
  }

  .lm-menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(4px, 0.35vw, 7px) !important;
    max-width: none !important;
    min-height: 40px !important;
    padding: 7px clamp(5px, 0.55vw, 12px) !important;
    font-size: clamp(10px, 0.72vw, 14px) !important;
    letter-spacing: clamp(0.01em, 0.08vw, 0.055em) !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
    text-wrap: nowrap !important;
  }

  .lm-menu > li.menu-item-has-children > a {
    padding-right: clamp(5px, 0.55vw, 12px) !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    position: static !important;
    display: inline-block !important;
    width: clamp(5px, 0.42vw, 8px) !important;
    height: clamp(5px, 0.42vw, 8px) !important;
    margin-left: clamp(3px, 0.25vw, 6px) !important;
    flex: 0 0 auto !important;
    transform: translateY(-1px) rotate(45deg) !important;
  }

  .lm-header-actions {
    gap: clamp(6px, 0.6vw, 12px) !important;
    flex: 0 0 auto !important;
  }

  .lm-header-actions .lm-header-icon {
    width: clamp(34px, 2.65vw, 46px) !important;
    height: clamp(34px, 2.65vw, 46px) !important;
    min-width: clamp(34px, 2.65vw, 46px) !important;
  }
}

@media (min-width: 981px) and (max-width: 1440px) {
  .lm-site-header,
  .lm-header-utility-bar__inner,
  .lm-topbar__slides {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
  }

  .lm-menu > li > a {
    font-size: clamp(9.5px, 0.78vw, 12px) !important;
    padding-left: clamp(4px, 0.45vw, 8px) !important;
    padding-right: clamp(4px, 0.45vw, 8px) !important;
  }
}

@media (min-width: 981px) and (max-width: 1220px) {
  .lm-site-header__inner {
    column-gap: 8px !important;
  }

  .lm-menu {
    gap: 2px !important;
  }

  .lm-menu > li > a {
    font-size: clamp(8.8px, 0.82vw, 10.5px) !important;
    letter-spacing: 0.01em !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
  }

  .lm-menu > li.menu-item-has-children > a::after {
    width: 5px !important;
    height: 5px !important;
    margin-left: 3px !important;
  }

  .lm-header-actions {
    gap: 5px !important;
  }

  .lm-header-actions .lm-header-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
  }
}

/* === SKYADS v160: header icon circles + tighter submenu arrows === */
@media (min-width: 981px) {
  html body .lm-site-header .lm-header-actions {
    gap: clamp(5px, 0.55vw, 11px) !important;
    align-items: center !important;
    flex: 0 0 auto !important;
  }

  html body .lm-site-header .lm-header-actions .lm-header-icon,
  html body .lm-site-header .lm-header-actions button.lm-header-icon,
  html body .lm-site-header .lm-header-actions a.lm-header-icon {
    width: clamp(34px, 2.45vw, 46px) !important;
    height: clamp(34px, 2.45vw, 46px) !important;
    min-width: clamp(34px, 2.45vw, 46px) !important;
    min-height: clamp(34px, 2.45vw, 46px) !important;
    aspect-ratio: 1 / 1 !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(113, 34, 137, 0.22) !important;
    background: rgba(255,255,255,0.82) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    color: var(--accent) !important;
    line-height: 1 !important;
    overflow: visible !important;
  }

  html body .lm-site-header .lm-header-actions .lm-header-icon svg,
  html body .lm-site-header .lm-header-actions .lm-header-icon .lm-wishlist-icon svg {
    width: clamp(17px, 1.18vw, 21px) !important;
    height: clamp(17px, 1.18vw, 21px) !important;
    display: block !important;
    flex: 0 0 auto !important;
  }

  html body .lm-site-header .lm-header-actions .lm-wishlist-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    line-height: 1 !important;
  }

  html body .lm-site-header .lm-cart-count,
  html body .lm-site-header .lm-wishlist-count {
    top: clamp(-7px, -0.42vw, -4px) !important;
    right: clamp(-7px, -0.42vw, -4px) !important;
    min-width: clamp(17px, 1.1vw, 21px) !important;
    height: clamp(17px, 1.1vw, 21px) !important;
    font-size: clamp(9px, 0.62vw, 11px) !important;
    padding: 0 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu {
    gap: clamp(5px, 0.62vw, 14px) !important;
    align-items: center !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li,
  html body .lm-site-header .lm-nav-panel .lm-menu > li.menu-item-has-children {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0 !important;
    width: auto !important;
    min-width: 0 !important;
    flex: 0 1 auto !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li > a {
    width: auto !important;
    max-width: none !important;
    flex: 0 1 auto !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding-left: clamp(4px, 0.42vw, 9px) !important;
    padding-right: clamp(2px, 0.25vw, 5px) !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li.menu-item-has-children > a {
    padding-right: clamp(2px, 0.25vw, 5px) !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li.menu-item-has-children > a::after {
    position: static !important;
    display: inline-block !important;
    flex: 0 0 auto !important;
    width: clamp(6px, 0.46vw, 9px) !important;
    height: clamp(6px, 0.46vw, 9px) !important;
    margin-left: clamp(6px, 0.45vw, 9px) !important;
    margin-right: 0 !important;
    transform: translateY(-1px) rotate(45deg) !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li > .lm-submenu-toggle {
    position: static !important;
    flex: 0 0 auto !important;
    width: clamp(16px, 1.05vw, 22px) !important;
    height: clamp(16px, 1.05vw, 22px) !important;
    min-width: clamp(16px, 1.05vw, 22px) !important;
    margin-left: clamp(4px, 0.35vw, 7px) !important;
    margin-right: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    transform: none !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li > .lm-submenu-toggle span[aria-hidden="true"] {
    width: clamp(7px, 0.5vw, 10px) !important;
    height: clamp(7px, 0.5vw, 10px) !important;
    margin: 0 !important;
  }
}

@media (min-width: 981px) and (max-width: 1440px) {
  html body .lm-site-header .lm-nav-panel .lm-menu {
    gap: clamp(4px, 0.48vw, 9px) !important;
  }

  html body .lm-site-header .lm-header-actions .lm-header-icon,
  html body .lm-site-header .lm-header-actions button.lm-header-icon,
  html body .lm-site-header .lm-header-actions a.lm-header-icon {
    width: clamp(33px, 2.35vw, 40px) !important;
    height: clamp(33px, 2.35vw, 40px) !important;
    min-width: clamp(33px, 2.35vw, 40px) !important;
    min-height: clamp(33px, 2.35vw, 40px) !important;
  }
}

@media (min-width: 981px) and (max-width: 1220px) {
  html body .lm-site-header .lm-nav-panel .lm-menu {
    gap: 4px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li > a {
    padding-left: 3px !important;
    padding-right: 1px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li.menu-item-has-children > a::after {
    width: 6px !important;
    height: 6px !important;
    margin-left: 5px !important;
  }

  html body .lm-site-header .lm-header-actions .lm-header-icon,
  html body .lm-site-header .lm-header-actions button.lm-header-icon,
  html body .lm-site-header .lm-header-actions a.lm-header-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
  }

  html body .lm-site-header .lm-header-actions .lm-header-icon svg,
  html body .lm-site-header .lm-header-actions .lm-header-icon .lm-wishlist-icon svg {
    width: 16px !important;
    height: 16px !important;
  }
}


/* === SKYADS v161: slightly larger scalable desktop menu === */
@media (min-width: 981px) {
  html body .lm-site-header .lm-nav-panel .lm-menu {
    gap: clamp(6px, 0.68vw, 15px) !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li > a {
    font-size: clamp(10.5px, 0.78vw, 14.8px) !important;
    letter-spacing: clamp(0.015em, 0.075vw, 0.055em) !important;
    padding-left: clamp(5px, 0.46vw, 10px) !important;
    padding-right: clamp(2px, 0.25vw, 5px) !important;
    min-height: 42px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li.menu-item-has-children > a::after {
    width: clamp(6px, 0.47vw, 9px) !important;
    height: clamp(6px, 0.47vw, 9px) !important;
    margin-left: clamp(5px, 0.38vw, 7px) !important;
  }
}

@media (min-width: 981px) and (max-width: 1440px) {
  html body .lm-site-header .lm-nav-panel .lm-menu {
    gap: clamp(4px, 0.5vw, 10px) !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li > a {
    font-size: clamp(10px, 0.84vw, 12.8px) !important;
    padding-left: clamp(4px, 0.42vw, 8px) !important;
    padding-right: clamp(2px, 0.2vw, 4px) !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li.menu-item-has-children > a::after {
    margin-left: clamp(4px, 0.34vw, 6px) !important;
  }
}

@media (min-width: 981px) and (max-width: 1220px) {
  html body .lm-site-header .lm-nav-panel .lm-menu {
    gap: 4px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li > a {
    font-size: clamp(9.4px, 0.88vw, 11.2px) !important;
    letter-spacing: 0.012em !important;
    padding-left: 3px !important;
    padding-right: 1px !important;
  }

  html body .lm-site-header .lm-nav-panel .lm-menu > li.menu-item-has-children > a::after {
    width: 6px !important;
    height: 6px !important;
    margin-left: 4px !important;
  }
}


/* === SKYADS v162: two-row variant grid with safe expand/collapse button === */
.single-product .lm-product-block--variants-under-title {
  overflow: visible !important;
  position: relative !important;
}

.single-product .lm-product-block--variants-under-title .lm-variant-mini-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: clamp(12px, 1.05vw, 16px) !important;
  align-items: stretch !important;
  align-content: start !important;
  padding: 10px 0 10px !important;
  margin: -2px 0 16px !important;
  overflow: hidden !important;
  transition: max-height .28s ease !important;
  position: relative !important;
  z-index: 1 !important;
}

.single-product .lm-product-block--variants-under-title .lm-variant-mini-grid.is-collapsed {
  overflow: hidden !important;
}

.single-product .lm-product-block--variants-under-title .lm-variant-mini {
  min-width: 0 !important;
  max-width: none !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.single-product .lm-product-block--variants-under-title .lm-variants-more {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  min-width: 150px !important;
  margin: 0 auto 22px !important;
  padding: 11px 24px !important;
  position: relative !important;
  z-index: 5 !important;
  clear: both !important;
}

.single-product .lm-product-block--variants-under-title .lm-variants-more[hidden] {
  display: none !important;
}

.single-product .lm-product-block--variants-under-title .lm-variant-preview-box {
  z-index: 20 !important;
}

@media (max-width: 1220px) and (min-width: 981px) {
  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 980px) {
  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid {
    display: flex !important;
    grid-template-columns: none !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    max-height: none !important;
    margin-bottom: 10px !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variants-more {
    display: none !important;
  }
}

/* Version cache bump: 1.2.167 */

/* === SKYADS v163: mobile scrollable thumbnails, 3 visible; desktop gallery 6 visible === */
.single-product .lm-gallery-thumbs {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1vw, 16px) !important;
  flex-wrap: initial !important;
  align-items: stretch !important;
  overflow: visible !important;
}

.single-product .lm-gallery-thumbs .lm-thumb,
.single-product .lm-thumb {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  min-width: 0 !important;
  max-width: none !important;
}

@media (max-width: 980px) {
  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid,
  .single-product .lm-gallery-thumbs {
    display: flex !important;
    grid-template-columns: none !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    max-height: none !important;
    width: 100% !important;
    padding: 10px 0 14px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    scroll-snap-type: x proximity !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-x !important;
    overscroll-behavior-x: contain !important;
    cursor: grab !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid:active,
  .single-product .lm-gallery-thumbs:active {
    cursor: grabbing !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-mini,
  .single-product .lm-gallery-thumbs .lm-thumb,
  .single-product .lm-thumb {
    flex: 0 0 calc((100% - 24px) / 3) !important;
    width: calc((100% - 24px) / 3) !important;
    min-width: calc((100% - 24px) / 3) !important;
    max-width: calc((100% - 24px) / 3) !important;
    aspect-ratio: 1 / 1 !important;
    scroll-snap-align: start !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid.is-collapsed,
  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid.is-expanded {
    max-height: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variants-more {
    display: none !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variants-scroll-indicator {
    display: flex !important;
    position: relative !important;
    z-index: 3 !important;
    margin-top: 4px !important;
    margin-bottom: 16px !important;
    pointer-events: none !important;
  }
}

@media (max-width: 420px) {
  .single-product .lm-product-block--variants-under-title .lm-variant-mini-grid,
  .single-product .lm-gallery-thumbs {
    gap: 10px !important;
  }

  .single-product .lm-product-block--variants-under-title .lm-variant-mini,
  .single-product .lm-gallery-thumbs .lm-thumb,
  .single-product .lm-thumb {
    flex-basis: calc((100% - 20px) / 3) !important;
    width: calc((100% - 20px) / 3) !important;
    min-width: calc((100% - 20px) / 3) !important;
    max-width: calc((100% - 20px) / 3) !important;
  }
}

/* Version cache bump: 1.2.167 */


/* === SKYADS v164: reduce excessive mobile spacing below product carousels ===
   On mobile the transformed carousel cards reserve too much layout height below
   the visible row. Tighten the carousel shell and category block spacing without
   changing the horizontal carousel behavior. */
@media (max-width: 767px) {
  html body .bestsellers-section,
  html body .lm-joga-category-block,
  html body .lm-related-products-section,
  html body .lm-related-section {
    margin-bottom: clamp(18px, 6vw, 34px) !important;
    padding-bottom: 0 !important;
  }

  html body .bestsellers-arc-shell,
  html body .lm-joga-arc-shell,
  html body .lm-related-arc-shell {
    min-height: 0 !important;
    height: auto !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
  }

  html body .bestsellers-scroller,
  html body .lm-joga-scroller,
  html body .lm-related-scroller {
    padding-top: 20px !important;
    padding-bottom: 8px !important;
    margin-bottom: 0 !important;
  }

  html body .bestsellers-scroller .arc-card,
  html body .lm-joga-scroller .arc-card,
  html body .lm-related-scroller .arc-card {
    margin-bottom: 0 !important;
  }

  html body .bestsellers-scroller + *,
  html body .lm-joga-scroller + *,
  html body .lm-related-scroller + *,
  html body .lm-joga-carousel-wrap + *,
  html body .lm-related-carousel-wrap + * {
    margin-top: clamp(18px, 5vw, 30px) !important;
  }
}

@media (max-width: 480px) {
  html body .bestsellers-section,
  html body .lm-joga-category-block,
  html body .lm-related-products-section,
  html body .lm-related-section {
    margin-bottom: 22px !important;
  }

  html body .bestsellers-scroller,
  html body .lm-joga-scroller,
  html body .lm-related-scroller {
    padding-bottom: 4px !important;
  }
}

/* Version cache bump: 1.2.167 */

/* === SKYADS v165: plain mobile product carousel, no arc wobble ===
   Mobile product sequences are now ordinary horizontal carousels: no raised/lowered
   arc transform, no live center-card highlight, no reserved arc height below cards. */
@media (max-width: 767px) {
  html body .bestsellers-arc-shell,
  html body .lm-joga-arc-shell,
  html body .single-product .lm-related-arc-shell,
  html body .lm-related-arc-shell {
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  html body .bestsellers-arc-shell::before,
  html body .lm-joga-arc-shell::before,
  html body .single-product .lm-related-arc-shell::before,
  html body .lm-related-arc-shell::before {
    content: none !important;
    display: none !important;
  }

  html body .bestsellers-scroller,
  html body .lm-joga-scroller,
  html body .single-product .lm-related-scroller,
  html body .lm-related-scroller {
    display: flex !important;
    align-items: stretch !important;
    gap: 14px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 8px 16px 12px !important;
    margin: 0 !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior-x: contain !important;
    cursor: grab !important;
    scrollbar-width: none !important;
  }

  html body .bestsellers-scroller::-webkit-scrollbar,
  html body .lm-joga-scroller::-webkit-scrollbar,
  html body .single-product .lm-related-scroller::-webkit-scrollbar,
  html body .lm-related-scroller::-webkit-scrollbar {
    display: none !important;
  }

  html body .bestsellers-scroller .arc-card,
  html body .lm-joga-scroller .arc-card,
  html body .single-product .lm-related-scroller .arc-card,
  html body .lm-related-scroller .arc-card {
    flex: 0 0 74vw !important;
    width: 74vw !important;
    min-width: 74vw !important;
    max-width: 74vw !important;
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    opacity: 1 !important;
    transition: none !important;
    will-change: auto !important;
    scroll-snap-align: start !important;
    margin: 0 !important;
  }

  html body .bestsellers-scroller .arc-card.is-current .best-name,
  html body .lm-joga-scroller .arc-card.is-current .best-name,
  html body .single-product .lm-related-scroller .arc-card.is-current .best-name,
  html body .lm-related-scroller .arc-card.is-current .best-name {
    color: rgba(17,17,17,.72) !important;
    background: transparent !important;
    padding: 0 !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  html body .bestsellers-scroller .best-meta,
  html body .lm-joga-scroller .best-meta,
  html body .single-product .lm-related-scroller .best-meta,
  html body .lm-related-scroller .best-meta {
    min-height: 0 !important;
    margin-top: 12px !important;
    padding-bottom: 0 !important;
  }

  html body .bestsellers-section,
  html body .lm-joga-category-block,
  html body .single-product .lm-related-products-section,
  html body .lm-related-products-section,
  html body .lm-related-section {
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
  }

  html body .single-product .lm-related-products-section {
    margin-top: 34px !important;
  }

  html body .single-product .lm-related-arc-section .lm-section-heading {
    margin-bottom: 18px !important;
  }
}

@media (max-width: 420px) {
  html body .bestsellers-scroller,
  html body .lm-joga-scroller,
  html body .single-product .lm-related-scroller,
  html body .lm-related-scroller {
    gap: 12px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  html body .bestsellers-scroller .arc-card,
  html body .lm-joga-scroller .arc-card,
  html body .single-product .lm-related-scroller .arc-card,
  html body .lm-related-scroller .arc-card {
    flex-basis: 78vw !important;
    width: 78vw !important;
    min-width: 78vw !important;
    max-width: 78vw !important;
  }
}

/* Version cache bump: 1.2.167 */


/* === SKYADS v167: single product mobile related carousel plain + compact ===
   Product pages use their own JS for the related-products arc. On mobile it must
   behave like a normal horizontal carousel, exactly like homepage v165. */
@media (max-width: 767px) {
  html body.single-product .lm-related-products-section,
  html body.single-product .lm-related-arc-section {
    margin-top: 18px !important;
    margin-bottom: 14px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
  }

  html body.single-product .lm-related-arc-section .lm-section-heading {
    margin-bottom: 14px !important;
  }

  html body.single-product .lm-related-arc-shell,
  html body.single-product .bestsellers-arc-shell.lm-related-arc-shell {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  html body.single-product .lm-related-arc-shell .bestsellers-arc-lines,
  html body.single-product .lm-related-arc-shell::before,
  html body.single-product .lm-related-arc-shell::after,
  html body.single-product .lm-related-arc-shell .lm-carousel-arrow {
    display: none !important;
    content: none !important;
  }

  html body.single-product .lm-related-scroller,
  html body.single-product .bestsellers-scroller.lm-related-scroller,
  html body.single-product .lm-related-scroller.lm-manual-product-carousel,
  html body.single-product .lm-related-scroller.lm-mobile-plain-product-carousel {
    display: flex !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 6px 14px 10px !important;
    margin: 0 !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior-x: contain !important;
    scrollbar-width: none !important;
    transform: none !important;
  }

  html body.single-product .lm-related-scroller::-webkit-scrollbar {
    display: none !important;
  }

  html body.single-product .lm-related-scroller .arc-card,
  html body.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card,
  html body.single-product .lm-related-scroller.lm-mobile-plain-product-carousel .arc-card {
    flex: 0 0 74vw !important;
    width: 74vw !important;
    min-width: 74vw !important;
    max-width: 74vw !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    scroll-snap-align: start !important;
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    transition: none !important;
    animation: none !important;
    will-change: auto !important;
    opacity: 1 !important;
    margin: 0 !important;
    top: auto !important;
  }

  html body.single-product .lm-related-scroller .product-card-image {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
  }

  html body.single-product .lm-related-scroller .best-meta {
    min-height: 0 !important;
    height: auto !important;
    margin-top: 10px !important;
    padding: 0 !important;
  }

  html body.single-product .lm-related-scroller .arc-card.is-current .best-name,
  html body.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card.is-current .best-name {
    color: rgba(17,17,17,.72) !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    text-decoration: none !important;
  }
}

@media (max-width: 420px) {
  html body.single-product .lm-related-scroller .arc-card,
  html body.single-product .lm-related-scroller.lm-manual-product-carousel .arc-card,
  html body.single-product .lm-related-scroller.lm-mobile-plain-product-carousel .arc-card {
    flex-basis: 78vw !important;
    width: 78vw !important;
    min-width: 78vw !important;
    max-width: 78vw !important;
  }
}

/* Version cache bump: 1.2.167 */


/* === SKYADS v167: carousel title and price link to product === */
.best-meta .best-name--link,
.best-meta .best-price--link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.best-meta .best-name--link:hover,
.best-meta .best-name--link:focus-visible,
.best-meta .best-price--link:hover,
.best-meta .best-price--link:focus-visible {
  color: inherit;
  text-decoration: none;
}

.best-meta .best-name--link:focus-visible,
.best-meta .best-price--link:focus-visible {
  outline: 2px solid rgba(116, 28, 139, 0.35);
  outline-offset: 3px;
  border-radius: 10px;
}

/* Version cache bump: 1.2.167 */


/* === v112: restore taxonomy pagination and keep search above navigation === */
.lm-archive-pagination {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 42px 0 10px;
}

.lm-archive-pagination .woocommerce-pagination {
  width: 100%;
}

/* The search overlay must cover the header and every open dropdown menu. */
.lm-search-modal {
  z-index: 2147483000 !important;
  isolation: isolate;
}

.lm-search-modal__backdrop {
  z-index: 0;
}

.lm-search-modal__dialog {
  z-index: 1;
}


/* === v113: infinite scroll on product categories and tags === */
.lm-archive-pagination {
  display: none !important;
}


/* === v115: numbered pagination on product archives === */
.lm-archive-pagination {
  display: flex !important;
  justify-content: center;
  width: 100%;
  margin: 42px 0 10px;
}

.lm-archive-pagination .woocommerce-pagination {
  display: block;
  width: 100%;
}

.lm-archive-loadmore-wrap,
#lmArchiveLoadMore {
  display: none !important;
}

/* === v116: polished circular numbered pagination === */
.lm-archive-pagination .woocommerce-pagination ul.page-numbers {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  list-style: none !important;
}

.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  float: none !important;
}

.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li > .page-numbers {
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 46px;
  width: 46px !important;
  min-width: 46px;
  height: 46px !important;
  min-height: 46px;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(85, 20, 96, 0.18) !important;
  border-radius: 50% !important;
  background: #fff;
  color: var(--accent-dark, #551460);
  font-size: 16px;
  font-weight: 600;
  line-height: 1 !important;
  text-align: center;
  text-decoration: none !important;
  box-shadow: 0 8px 22px rgba(78, 15, 88, 0.08);
  transition: transform .2s ease, box-shadow .2s ease, color .2s ease, background-color .2s ease, border-color .2s ease;
}

.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li > a.page-numbers:hover,
.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li > a.page-numbers:focus-visible {
  transform: translateY(-2px);
  border-color: var(--accent, #76208f) !important;
  background: rgba(118, 32, 143, 0.08);
  box-shadow: 0 12px 26px rgba(78, 15, 88, 0.14);
  outline: none;
}

.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li > .page-numbers.current {
  border-color: var(--accent, #76208f) !important;
  background: var(--accent, #76208f) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(118, 32, 143, 0.24);
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.prev,
.lm-archive-pagination .woocommerce-pagination .page-numbers.next {
  font-size: 0;
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.prev::before,
.lm-archive-pagination .woocommerce-pagination .page-numbers.next::before {
  display: block;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  transform: translateY(-1px);
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.prev::before {
  content: "\2039";
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.next::before {
  content: "\203A";
}

@media (max-width: 600px) {
  .lm-archive-pagination .woocommerce-pagination ul.page-numbers {
    gap: 8px;
  }

  .lm-archive-pagination .woocommerce-pagination ul.page-numbers > li > .page-numbers {
    flex-basis: 42px;
    width: 42px !important;
    min-width: 42px;
    height: 42px !important;
    min-height: 42px;
    font-size: 15px;
  }
}

/* === v117: pagination hover space and shadow cleanup === */
.lm-archive-pagination .woocommerce-pagination ul.page-numbers {
  padding: 8px 6px 6px !important;
  overflow: visible !important;
}

.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li {
  box-sizing: border-box;
  width: 58px;
  min-width: 58px;
  height: 58px;
  min-height: 58px;
  padding: 6px !important;
  background: transparent !important;
  overflow: visible !important;
}

.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li > .page-numbers,
.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li > .page-numbers.current,
.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li > a.page-numbers:hover,
.lm-archive-pagination .woocommerce-pagination ul.page-numbers > li > a.page-numbers:focus-visible {
  box-shadow: none !important;
}

@media (max-width: 600px) {
  .lm-archive-pagination .woocommerce-pagination ul.page-numbers > li {
    width: 52px;
    min-width: 52px;
    height: 52px;
    min-height: 52px;
    padding: 5px !important;
  }
}


/* === v119: Kalnia headings and unified single-arrow pagination === */
:root {
  --font-serif: 'Kalnia', Georgia, serif;
  --lm-font-heading: 'Kalnia', Georgia, serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--lm-heading-color);
}

h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title,
.product_title,
.woocommerce-loop-product__title,
.lm-card-title,
.lm-blog-card__title {
  font-family: var(--font-serif) !important;
  font-weight: 400;
  font-stretch: 104%;
  font-variation-settings: 'wght' 400, 'wdth' 104;
  letter-spacing: -0.015em;
}

h1,
.elementor-widget-heading h1.elementor-heading-title,
.product_title {
  line-height: 1.02;
}

h2,
.elementor-widget-heading h2.elementor-heading-title {
  line-height: 1.06;
}

/* Hide every native/text arrow and render one consistent SVG arrow only. */
.lm-archive-pagination .woocommerce-pagination .page-numbers.prev,
.lm-archive-pagination .woocommerce-pagination .page-numbers.next,
.lm-blog-listing .page-numbers.prev,
.lm-blog-listing .page-numbers.next {
  position: relative;
  overflow: hidden;
  font-size: 0 !important;
  line-height: 0 !important;
  color: var(--accent-dark, #4e0f58) !important;
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.prev > *,
.lm-archive-pagination .woocommerce-pagination .page-numbers.next > *,
.lm-blog-listing .page-numbers.prev > *,
.lm-blog-listing .page-numbers.next > * {
  display: none !important;
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.prev::before,
.lm-archive-pagination .woocommerce-pagination .page-numbers.next::before,
.lm-blog-listing .page-numbers.prev::before,
.lm-blog-listing .page-numbers.next::before {
  content: '' !important;
  display: block !important;
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M14 6l6 6-6 6' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M14 6l6 6-6 6' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transform: none !important;
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.prev::before,
.lm-blog-listing .page-numbers.prev::before {
  transform: rotate(180deg) !important;
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.prev::after,
.lm-archive-pagination .woocommerce-pagination .page-numbers.next::after,
.lm-blog-listing .page-numbers.prev::after,
.lm-blog-listing .page-numbers.next::after {
  content: none !important;
  display: none !important;
}

.lm-archive-pagination .woocommerce-pagination a.page-numbers.prev:hover,
.lm-archive-pagination .woocommerce-pagination a.page-numbers.next:hover,
.lm-archive-pagination .woocommerce-pagination a.page-numbers.prev:focus-visible,
.lm-archive-pagination .woocommerce-pagination a.page-numbers.next:focus-visible,
.lm-blog-listing a.page-numbers.prev:hover,
.lm-blog-listing a.page-numbers.next:hover,
.lm-blog-listing a.page-numbers.prev:focus-visible,
.lm-blog-listing a.page-numbers.next:focus-visible {
  color: var(--accent, #712289) !important;
}

@media (max-width: 600px) {
  .lm-archive-pagination .woocommerce-pagination .page-numbers.prev::before,
  .lm-archive-pagination .woocommerce-pagination .page-numbers.next::before,
  .lm-blog-listing .page-numbers.prev::before,
  .lm-blog-listing .page-numbers.next::before {
    width: 21px;
    height: 21px;
    flex-basis: 21px;
  }
}

/* === v176: white H3 headings inside the categories visual panel === */
.categories-right h3 {
  color: #ffffff !important;
}

/* === v177: dark gray H1 on internal and single content pages === */
body.page:not(.home) main h1,
body.single-post main h1,
body.single-product main h1,
.lm-contact-title,
.lm-contact-page .lm-taxonomy-title {
  color: var(--lm-heading-color, #4a454b) !important;
}


/* === v178: dark gray SEO headings and product kicker === */
.lm-joga-seo-grid h2,
.lm-product-kicker {
  color: var(--lm-heading-color, #4a454b) !important;
}

.lm-product-kicker::before {
  background: var(--lm-heading-color, #4a454b) !important;
}

/* === v179: dark gray H2 on internal and single content pages === */
body.page:not(.home) main h2,
body.single-post main h2,
body.single-product main h2 {
  color: var(--lm-heading-color, #4a454b) !important;
}

/* === v180: pagination chevrons matched to carousel arrow buttons === */
.lm-archive-pagination .woocommerce-pagination .page-numbers.prev::before,
.lm-archive-pagination .woocommerce-pagination .page-numbers.next::before,
.lm-blog-listing .page-numbers.prev::before,
.lm-blog-listing .page-numbers.next::before {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  height: 100% !important;
  flex: 1 1 100% !important;
  padding: 0 0 4px !important;
  background: none !important;
  -webkit-mask: none !important;
  mask: none !important;
  color: currentColor;
  font-family: var(--font-sans, "DM Sans", sans-serif) !important;
  font-size: 36px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  transform: none !important;
  box-sizing: border-box;
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.prev::before,
.lm-blog-listing .page-numbers.prev::before {
  content: "\2039" !important;
}

.lm-archive-pagination .woocommerce-pagination .page-numbers.next::before,
.lm-blog-listing .page-numbers.next::before {
  content: "\203A" !important;
}

@media (max-width: 600px) {
  .lm-archive-pagination .woocommerce-pagination .page-numbers.prev::before,
  .lm-archive-pagination .woocommerce-pagination .page-numbers.next::before,
  .lm-blog-listing .page-numbers.prev::before,
  .lm-blog-listing .page-numbers.next::before {
    width: 100% !important;
    height: 100% !important;
    flex-basis: 100% !important;
    font-size: 33px !important;
  }
}

/* === v181: smaller H2 headings in the SEO card grid === */
.lm-joga-seo-grid h2 {
  font-size: calc(clamp(1.75rem, 2.55vw, 3.15rem) - 10px) !important;
}

/* === SKYADS v186: product-specific add-on offers === */
.single-product .lm-product-upsells {
  margin: 18px 0 4px;
  padding: 18px;
  border: 1px solid rgba(78, 15, 88, 0.13);
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(113, 34, 137, 0.08), transparent 42%),
    rgba(255, 255, 255, 0.72);
}

.single-product .lm-product-upsells__header {
  margin-bottom: 14px;
}

.single-product .lm-product-upsells__eyebrow {
  display: block;
  margin-bottom: 4px;
  color: var(--accent);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1.25;
  text-transform: uppercase;
}

.single-product .lm-product-upsells__title {
  color: var(--lm-heading-color);
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2vw, 1.25rem);
  font-weight: 520;
  line-height: 1.25;
}

.single-product .lm-product-upsells__header p,
.single-product .lm-product-upsells__note {
  margin: 5px 0 0;
  color: var(--muted-text);
  font-size: 0.78rem;
  line-height: 1.45;
}

.single-product .lm-product-upsells__list {
  display: grid;
  gap: 9px;
}

.single-product .lm-product-upsell {
  position: relative;
  display: block;
  margin: 0;
  cursor: pointer;
}

.single-product .lm-product-upsell__checkbox {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

.single-product .lm-product-upsell__card {
  position: relative;
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 78px;
  padding: 8px 10px 8px 8px;
  border: 1px solid rgba(17, 17, 17, 0.10);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease, background-color 180ms ease;
}

.single-product .lm-product-upsell:hover .lm-product-upsell__card {
  border-color: rgba(113, 34, 137, 0.34);
  transform: translateY(-1px);
}

.single-product .lm-product-upsell__checkbox:focus-visible + .lm-product-upsell__card {
  outline: 3px solid rgba(113, 34, 137, 0.20);
  outline-offset: 2px;
}

.single-product .lm-product-upsell__checkbox:checked + .lm-product-upsell__card {
  border-color: var(--accent);
  background: rgba(113, 34, 137, 0.045);
  box-shadow: 0 10px 28px rgba(78, 15, 88, 0.10);
}

.single-product .lm-product-upsell__media {
  display: block;
  width: 62px;
  height: 62px;
  overflow: hidden;
  border-radius: 12px;
  background: #f4f0f5;
}

.single-product .lm-product-upsell__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.single-product .lm-product-upsell__content {
  min-width: 0;
}

.single-product .lm-product-upsell__name {
  display: block;
  overflow: hidden;
  color: var(--lm-heading-color);
  font-size: 0.88rem;
  font-weight: 700;
  line-height: 1.28;
  text-overflow: ellipsis;
}

.single-product .lm-product-upsell__action {
  display: block;
  margin-top: 4px;
  color: var(--muted-text);
  font-size: 0.72rem;
  line-height: 1.2;
}

.single-product .lm-product-upsell__aside {
  display: grid;
  justify-items: end;
  gap: 4px;
  min-width: 78px;
  padding-right: 24px;
}

.single-product .lm-product-upsell__discount {
  display: inline-flex;
  align-items: center;
  min-height: 21px;
  padding: 2px 7px;
  border-radius: 999px;
  background: var(--accent);
  color: #fff;
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.single-product .lm-product-upsell__price {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 3px 6px;
  color: var(--accent-dark);
  font-size: 0.79rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: right;
}

.single-product .lm-product-upsell__price del {
  color: rgba(17, 17, 17, 0.47);
  font-size: 0.70rem;
  font-weight: 500;
}

.single-product .lm-product-upsell__price ins {
  color: var(--accent-dark);
  font-weight: 800;
  text-decoration: none;
}

.single-product .lm-product-upsell__tick {
  position: absolute;
  top: 50%;
  right: 10px;
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border: 1px solid rgba(113, 34, 137, 0.30);
  border-radius: 50%;
  background: #fff;
  color: transparent;
  font-size: 0.70rem;
  font-weight: 900;
  transform: translateY(-50%);
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.single-product .lm-product-upsell__checkbox:checked + .lm-product-upsell__card .lm-product-upsell__tick {
  border-color: var(--accent);
  background: var(--accent);
  color: #fff;
}

.single-product .lm-product-upsells__note {
  padding-left: 18px;
  position: relative;
}

.single-product .lm-product-upsells__note::before {
  content: "";
  position: absolute;
  top: 0.52em;
  left: 2px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent-soft);
}

@media (max-width: 520px) {
  .single-product .lm-product-upsells {
    padding: 14px;
    border-radius: 18px;
  }

  .single-product .lm-product-upsell__card {
    grid-template-columns: 54px minmax(0, 1fr);
    min-height: 72px;
    padding: 8px 36px 8px 8px;
  }

  .single-product .lm-product-upsell__media {
    width: 54px;
    height: 54px;
  }

  .single-product .lm-product-upsell__aside {
    grid-column: 2;
    justify-items: start;
    min-width: 0;
    padding-right: 0;
  }

  .single-product .lm-product-upsell__price {
    justify-content: flex-start;
    text-align: left;
  }
}
