/*
Theme Name: LoveVibz USA Luxury
Theme URI: https://lovevibzusa.com/
Author: Retail Experience
Description: A performance-first, editorial WooCommerce storefront built exclusively for LoveVibz USA.
Version: 1.0.0
Requires at least: 6.7
Requires PHP: 8.1
Text Domain: love-lenceria-usa
*/

:root {
  --llu-ink: #201619;
  --llu-plum: #4c1830;
  --llu-wine: #771d36;
  --llu-rose: #c7868f;
  --llu-blush: #f2dfdc;
  --llu-cream: #fbf7f1;
  --llu-paper: #fffdf9;
  --llu-gold: #b38a4b;
  --llu-muted: #75686b;
  --llu-line: rgba(32, 22, 25, .14);
  --llu-shadow: 0 22px 60px rgba(50, 20, 30, .11);
  --llu-serif: Georgia, 'Times New Roman', serif;
  --llu-sans: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* Chromatic editorial refresh — 1.4.0
   Jewel-toned gradients add identity without overwhelming product imagery. */
:root {
  --llu-gradient-primary: linear-gradient(135deg,#351022 0%,#761d49 52%,#cf3f79 100%);
  --llu-gradient-violet: linear-gradient(135deg,#28143d 0%,#65276f 54%,#b33e86 100%);
  --llu-gradient-sunset: linear-gradient(135deg,#741b45 0%,#c44777 56%,#ee879f 100%);
  --llu-gradient-blush: linear-gradient(145deg,#fffafc 0%,#f9dce8 52%,#efbfd3 100%);
  --llu-shadow-colour: 0 22px 54px rgba(93,25,65,.18);
}

.llu-notice,
.llu-button:not(.llu-button--ghost),
.single-product div.product .single_add_to_cart_button,
.woocommerce a.checkout-button,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
  color: #fff !important;
  background: var(--llu-gradient-primary) !important;
  border-color: transparent !important;
  box-shadow: 0 12px 28px rgba(112,28,72,.24);
}
.llu-button:not(.llu-button--ghost):hover,
.single-product div.product .single_add_to_cart_button:hover,
.woocommerce a.checkout-button:hover,
.woocommerce button.button.alt:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
  color: #fff !important;
  background: var(--llu-gradient-violet) !important;
  box-shadow: 0 16px 34px rgba(87,31,102,.3);
  transform: translateY(-1px);
}
.llu-button--ghost {
  color: #5d1737;
  background: rgba(255,255,255,.82);
  border-color: rgba(113,29,69,.45);
  box-shadow: 0 10px 26px rgba(96,33,65,.1);
}
.llu-button--ghost:hover { color:#fff; background:var(--llu-gradient-primary); border-color:transparent; }

.llu-service-strip {
  color: #fff;
  background: var(--llu-gradient-primary);
  border-color: rgba(255,255,255,.18);
  box-shadow: var(--llu-shadow-colour);
}
.llu-service span { color: rgba(255,255,255,.76); }
.llu-service + .llu-service { border-color: rgba(255,255,255,.22); }
.llu-section--tint {
  background:
    radial-gradient(circle at 12% 8%,rgba(224,93,142,.2),transparent 28%),
    linear-gradient(145deg,#fff9fb 0%,#f7dce7 100%);
}

.llu-category-card,
.llu-category-card:nth-child(2),
.llu-category-card:nth-child(3),
.llu-category-card:nth-child(4) {
  color: #fff;
  border-color: rgba(255,255,255,.16);
  box-shadow: var(--llu-shadow-colour);
}
.llu-category-card { background: var(--llu-gradient-primary); }
.llu-category-card:nth-child(2) { background: var(--llu-gradient-violet); }
.llu-category-card:nth-child(3) { background: var(--llu-gradient-sunset); }
.llu-category-card:nth-child(4) { background: linear-gradient(135deg,#1d1118 0%,#4e1734 54%,#852552 100%); }
.llu-category-card::before,
.llu-category-card:nth-child(4)::before {
  background: linear-gradient(180deg,rgba(25,8,18,.02) 28%,rgba(25,8,18,.86) 100%);
}
.llu-category-card__art {
  opacity: .82;
  background:
    radial-gradient(circle at 76% 18%,rgba(255,255,255,.34),transparent 28%),
    radial-gradient(circle at 15% 75%,rgba(255,176,214,.28),transparent 33%);
}

.llu-shop-hero {
  background:
    radial-gradient(circle at 9% 10%,rgba(211,69,124,.2),transparent 33%),
    linear-gradient(135deg,#fff9fb 0%,#f5dce6 100%);
  box-shadow: var(--llu-shadow-colour);
}
.llu-shop-hero__copy::after { height: 3px; background: var(--llu-gradient-primary); border-radius: 999px; }
.llu-shop-hero__media { background-color:#fbf0f5; }
.llu-shop-hero__media::after { background:linear-gradient(90deg,rgba(248,221,232,.42),transparent 30%); }
.llu-subcategory {
  background: var(--llu-gradient-blush);
  border: 1px solid rgba(158,50,98,.14);
  box-shadow: 0 16px 36px rgba(91,27,62,.12);
}
.llu-subcategory:nth-child(2n) { background:linear-gradient(145deg,#fff 0%,#eadcf5 100%); }
.llu-subcategory:hover { color:#691b43; border-color:rgba(159,49,99,.38); box-shadow:0 20px 42px rgba(91,27,62,.19); }

.single-product .woocommerce-product-gallery__image,
.woocommerce ul.products li.product a img {
  background: linear-gradient(145deg,#fff 0%,#fae7ef 62%,#eed8e9 100%);
}
.single-product div.product .summary {
  background: linear-gradient(145deg,rgba(255,255,255,.97),rgba(251,235,243,.9));
  box-shadow: 0 22px 58px rgba(83,25,57,.14);
}
.llu-purchase-assurance {
  background: linear-gradient(135deg,#fff9fc 0%,#f5dbe7 100%);
  box-shadow: inset 0 0 0 1px rgba(118,29,73,.09);
}

.llu-product-details {
  position: relative;
  isolation: isolate;
  color: #fff;
  background: var(--llu-gradient-violet);
  box-shadow: var(--llu-shadow-colour);
}
.llu-product-details::before,
.llu-product-details::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  filter: blur(8px);
  pointer-events: none;
}
.llu-product-details::before { top:-190px; right:-80px; background:rgba(242,117,171,.24); }
.llu-product-details::after { bottom:-210px; left:22%; background:rgba(255,189,219,.14); }
.llu-product-details__intro p { color:rgba(255,255,255,.78); }
.llu-product-details__intro .llu-kicker,
.llu-product-details__intro .llu-text-link { color:#ffd5e8; }
.llu-product-facts > div { border-color:rgba(255,255,255,.24); }
.llu-product-facts dt { color:rgba(255,255,255,.66); }
.llu-product-facts dd,
.llu-product-facts a,
.llu-product-facts .stock { color:#fff; }

.woocommerce div.product .woocommerce-tabs ul.tabs {
  background:linear-gradient(135deg,#f8e8ef,#eadcf5);
  border-color:rgba(111,34,78,.16);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  color:#fff;
  background:var(--llu-gradient-primary);
  box-shadow:0 9px 22px rgba(102,25,68,.23);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color:#fff; }
.woocommerce div.product .woocommerce-tabs .panel {
  background:linear-gradient(145deg,#fffafd 0%,#f6e1ea 100%);
  box-shadow:0 18px 44px rgba(89,29,61,.11);
}

.wc-block-cart__main,
.wc-block-checkout__main { background:linear-gradient(145deg,#fff 0%,#fff7fa 100%); }
.wc-block-cart__sidebar,
.wc-block-checkout__sidebar { background:linear-gradient(145deg,#fbecf3 0%,#eadcf5 100%); }
.llu-post-card { background:linear-gradient(145deg,#fff 0%,#f9e8ef 100%); box-shadow:0 18px 42px rgba(84,25,57,.1); }
.llu-editorial__copy,
.llu-mega__feature { background:var(--llu-gradient-violet); }
.llu-mega__feature { box-shadow:0 18px 42px rgba(66,24,82,.24); }

/* 1.5.0 final cascade: fixes the live commerce templates. */
.llu-header,
.admin-bar .llu-header { position:relative; top:auto; }

.single-product div.product { align-items:stretch; margin-top:42px; }
.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary { min-height:640px; }
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image { height:100%; }
.single-product .woocommerce-product-gallery__image {
  min-height:640px;
  background:radial-gradient(circle at 82% 12%,rgba(238,135,159,.3),transparent 30%),var(--llu-gradient-primary);
  box-shadow:var(--llu-shadow-colour);
}
.single-product .woocommerce-product-gallery__image img { max-height:640px; filter:drop-shadow(0 22px 24px rgba(27,8,18,.18)); }
.single-product div.product .summary {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(42px,5vw,74px);
  color:#fff;
  background:radial-gradient(circle at 92% 4%,rgba(240,137,185,.2),transparent 34%),var(--llu-gradient-violet);
  border-radius:var(--llu-radius-xl);
  box-shadow:var(--llu-shadow-colour);
}
.single-product div.product .product_title,
.single-product div.product p.price,
.single-product .woocommerce-product-details__short-description,
.single-product .llu-product-intro { color:#fff; }
.single-product .llu-product-eyebrow { color:#ffd4e5; }
.single-product .stock.out-of-stock { color:#ffb6d3; font-weight:700; }
.single-product .llu-purchase-assurance { color:#fff; background:rgba(255,255,255,.09); box-shadow:inset 0 0 0 1px rgba(255,255,255,.2); }
.single-product .llu-purchase-assurance a + a { border-color:rgba(255,255,255,.18); }
.single-product .llu-purchase-assurance strong { color:#fff; }
.single-product .llu-purchase-assurance span { color:rgba(255,255,255,.7); }

.woocommerce ul.products li.product a img {
  background:radial-gradient(circle at 86% 10%,rgba(238,135,159,.27),transparent 29%),var(--llu-gradient-primary);
  box-shadow:0 18px 42px rgba(74,20,50,.16);
}
.woocommerce ul.products li.product:nth-child(3n+2) a img { background:radial-gradient(circle at 82% 12%,rgba(230,130,190,.25),transparent 30%),var(--llu-gradient-violet); }
.woocommerce ul.products li.product:nth-child(3n) a img { background:radial-gradient(circle at 85% 10%,rgba(255,189,211,.22),transparent 29%),linear-gradient(135deg,#1d1118 0%,#4e1734 54%,#852552 100%); }
.woocommerce ul.products li.product:hover a img { background:radial-gradient(circle at 80% 8%,rgba(255,201,225,.34),transparent 31%),var(--llu-gradient-violet); box-shadow:0 24px 52px rgba(70,20,55,.24); }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button { min-height:42px; padding:10px 20px; color:#fff; background:var(--llu-gradient-primary); border:0; box-shadow:0 10px 24px rgba(95,25,65,.2); }
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.button:hover { color:#fff; background:var(--llu-gradient-violet); border:0; box-shadow:0 14px 30px rgba(73,27,91,.26); transform:translateY(-1px); }

.llu-subcategory,
.llu-subcategory:nth-child(2n) { color:#fff; background:var(--llu-gradient-primary); border:1px solid rgba(255,255,255,.16); box-shadow:0 18px 42px rgba(79,22,55,.2); }
.llu-subcategory:nth-child(3n+2) { background:var(--llu-gradient-violet); }
.llu-subcategory:nth-child(3n) { background:linear-gradient(135deg,#1d1118 0%,#4e1734 54%,#852552 100%); }
.llu-subcategory strong { color:#fff; }
.llu-subcategory small { color:rgba(255,255,255,.7); }
.llu-subcategory__image { background-color:rgba(255,255,255,.96); }
.llu-subcategory:hover { color:#fff; border-color:rgba(255,255,255,.36); box-shadow:0 24px 52px rgba(69,20,54,.28); }

.llu-recommendations { margin-top:72px; padding-top:54px; }
.llu-recommendations__head { margin-bottom:44px; }
.llu-recommendations ul.products { align-items:stretch; }
.llu-recommendations ul.products li.product { height:100%; }

@media (max-width:980px) {
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary { min-height:540px; }
  .single-product .woocommerce-product-gallery__image { min-height:540px; }
}
@media (max-width:700px) {
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary,
  .single-product .woocommerce-product-gallery__image { min-height:0; }
  .single-product div.product .summary { padding:34px 24px; border-radius:22px; }
  .single-product .woocommerce-product-gallery__image img { max-height:none; }
  .llu-recommendations { margin-top:58px; padding-top:42px; }
}

/* Cohesive jewel commerce finish — 1.5.0
   One dark brand family across product, collection and recommendation surfaces. */
html { scroll-padding-top: 24px; }
.llu-header,
.admin-bar .llu-header {
  position: relative;
  top: auto;
}

/* Pair the two product columns as equal-height luxury panels. */
.single-product div.product {
  align-items: stretch;
  margin-top: 42px;
}
.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary {
  min-height: 640px;
}
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image {
  height: 100%;
}
.single-product .woocommerce-product-gallery__image {
  min-height: 640px;
  background:
    radial-gradient(circle at 82% 12%,rgba(238,135,159,.3),transparent 30%),
    var(--llu-gradient-primary);
  box-shadow: var(--llu-shadow-colour);
}
.single-product .woocommerce-product-gallery__image img {
  max-height: 640px;
  filter: drop-shadow(0 22px 24px rgba(27,8,18,.18));
}
.single-product div.product .summary {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(42px,5vw,74px);
  color: #fff;
  background:
    radial-gradient(circle at 92% 4%,rgba(240,137,185,.2),transparent 34%),
    var(--llu-gradient-violet);
  border-radius: var(--llu-radius-xl);
  box-shadow: var(--llu-shadow-colour);
}
.single-product div.product .product_title,
.single-product div.product p.price,
.single-product .woocommerce-product-details__short-description,
.single-product .llu-product-intro { color:#fff; }
.single-product .llu-product-eyebrow { color:#ffd4e5; }
.single-product .stock.out-of-stock { color:#ffb6d3; font-weight:700; }
.single-product .llu-purchase-assurance {
  color:#fff;
  background:rgba(255,255,255,.09);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);
}
.single-product .llu-purchase-assurance a + a { border-color:rgba(255,255,255,.18); }
.single-product .llu-purchase-assurance strong { color:#fff; }
.single-product .llu-purchase-assurance span { color:rgba(255,255,255,.7); }

/* Dark, consistent framing replaces the unrelated candy-pink image wells. */
.woocommerce ul.products li.product a img {
  background:
    radial-gradient(circle at 86% 10%,rgba(238,135,159,.27),transparent 29%),
    var(--llu-gradient-primary);
  box-shadow:0 18px 42px rgba(74,20,50,.16);
}
.woocommerce ul.products li.product:nth-child(3n+2) a img {
  background:
    radial-gradient(circle at 82% 12%,rgba(230,130,190,.25),transparent 30%),
    var(--llu-gradient-violet);
}
.woocommerce ul.products li.product:nth-child(3n) a img {
  background:
    radial-gradient(circle at 85% 10%,rgba(255,189,211,.22),transparent 29%),
    linear-gradient(135deg,#1d1118 0%,#4e1734 54%,#852552 100%);
}
.woocommerce ul.products li.product:hover a img {
  background:
    radial-gradient(circle at 80% 8%,rgba(255,201,225,.34),transparent 31%),
    var(--llu-gradient-violet);
  box-shadow:0 24px 52px rgba(70,20,55,.24);
}

/* Product actions now share the same gradient and pill language everywhere. */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button {
  min-height:42px;
  padding:10px 20px;
  color:#fff;
  background:var(--llu-gradient-primary);
  border:0;
  box-shadow:0 10px 24px rgba(95,25,65,.2);
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.button:hover {
  color:#fff;
  background:var(--llu-gradient-violet);
  border:0;
  box-shadow:0 14px 30px rgba(73,27,91,.26);
  transform:translateY(-1px);
}

/* Category navigation uses the same deep family, with restrained variation. */
.llu-subcategory,
.llu-subcategory:nth-child(2n) {
  color:#fff;
  background:var(--llu-gradient-primary);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 18px 42px rgba(79,22,55,.2);
}
.llu-subcategory:nth-child(3n+2) { background:var(--llu-gradient-violet); }
.llu-subcategory:nth-child(3n) { background:linear-gradient(135deg,#1d1118 0%,#4e1734 54%,#852552 100%); }
.llu-subcategory strong { color:#fff; }
.llu-subcategory small { color:rgba(255,255,255,.7); }
.llu-subcategory__image { background-color:rgba(255,255,255,.96); }
.llu-subcategory:hover {
  color:#fff;
  border-color:rgba(255,255,255,.36);
  box-shadow:0 24px 52px rgba(69,20,54,.28);
}

/* Keep recommendation headings clear of surrounding chrome and tighten rhythm. */
.llu-recommendations {
  margin-top:72px;
  padding-top:54px;
}
.llu-recommendations__head { margin-bottom:44px; }
.llu-recommendations ul.products { align-items:stretch; }
.llu-recommendations ul.products li.product { height:100%; }

@media (max-width: 980px) {
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary { min-height:540px; }
  .single-product .woocommerce-product-gallery__image { min-height:540px; }
}

@media (max-width: 700px) {
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary { min-height:0; }
  .single-product .woocommerce-product-gallery__image { min-height:0; }
  .single-product div.product .summary { padding:34px 24px; border-radius:22px; }
  .single-product .woocommerce-product-gallery__image img { max-height:none; }
  .llu-recommendations { margin-top:58px; padding-top:42px; }
}

/* Retain the gradient on WooCommerce's higher-specificity purchase control. */
.single-product div.product form.cart .button.single_add_to_cart_button {
  color:#fff !important;
  background:var(--llu-gradient-primary) !important;
  border-color:transparent !important;
  box-shadow:0 12px 28px rgba(112,28,72,.24);
}
.single-product div.product form.cart .button.single_add_to_cart_button:hover {
  background:var(--llu-gradient-violet) !important;
  box-shadow:0 16px 34px rgba(87,31,102,.3);
}

@media (max-width: 700px) {
  .llu-service-strip { background:var(--llu-gradient-primary); }
  .llu-service + .llu-service { border-color:rgba(255,255,255,.18); }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--llu-ink);
  background: var(--llu-paper);
  font-family: var(--llu-sans);
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .18em; }
img { max-width: 100%; height: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.llu-wrap { width: min(1240px, calc(100% - 40px)); margin-inline: auto; }

.llu-notice {
  padding: 9px 20px;
  color: #fff;
  background: var(--llu-plum);
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.llu-header { position: sticky; top: 0; z-index: 50; background: rgba(255,253,249,.96); border-bottom: 1px solid var(--llu-line); backdrop-filter: blur(14px); }
.admin-bar .llu-header { top: 32px; }
.llu-header__inner { min-height: 84px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 28px; }
.llu-logo { display: flex; align-items: center; justify-content: center; text-decoration: none; line-height: 1; }
.llu-logo__image { display: block; width: clamp(220px, 24vw, 310px); height: auto; }
.llu-nav ul { margin: 0; padding: 0; list-style: none; }
.llu-nav > ul { display: flex; align-items: center; gap: 25px; }
.llu-nav a { font-size: 13px; font-weight: 700; letter-spacing: .05em; text-decoration: none; }
.llu-nav a:hover, .llu-nav a:focus { color: var(--llu-wine); }
.llu-mega__trigger { display: flex; align-items: center; gap: 3px; }
.llu-mega-toggle { border: 0; padding: 6px; color: inherit; background: transparent; font: inherit; cursor: pointer; }
.llu-mega__panel { position: absolute; top: 100%; left: 0; right: 0; visibility: hidden; opacity: 0; transform: translateY(8px); padding: 30px 0 34px; background: rgba(255,253,249,.99); border-block: 1px solid var(--llu-line); box-shadow: 0 28px 50px rgba(32,22,25,.12); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
.llu-mega:hover .llu-mega__panel, .llu-mega:focus-within .llu-mega__panel, .llu-mega.is-open .llu-mega__panel { visibility: visible; opacity: 1; transform: translateY(0); }
.llu-mega__inner { width: min(1240px,calc(100% - 40px)); display: grid; grid-template-columns: 1fr 1fr .8fr 1.25fr; gap: 38px; margin-inline: auto; }
.llu-mega__column h2, .llu-mega__feature h2 { margin: 0 0 16px; font-family: var(--llu-serif); font-size: 24px; font-weight: 400; letter-spacing: -.02em; }
.llu-mega__column > ul { display: grid; gap: 6px; }
.llu-mega__column li a { display: flex; justify-content: space-between; gap: 15px; padding: 5px 0; color: #493b3f; font-size: 13px; font-weight: 600; letter-spacing: 0; }
.llu-mega__column li a span { color: var(--llu-muted); font-size: 11px; }
.llu-mega__feature { padding: 28px; color: #fff; background: linear-gradient(145deg,var(--llu-plum),#8a2948); }
.llu-mega__feature .llu-kicker { color: #efd7d8; }
.llu-mega__feature h2 { color: #fff; font-size: 30px; line-height: 1.05; }
.llu-mega__feature p { color: rgba(255,255,255,.78); font-size: 13px; }
.llu-mega__feature a { color: #fff; font-size: 11px; text-transform: uppercase; }
.llu-actions { justify-self: end; display: flex; align-items: center; gap: 13px; }
.llu-icon-link { display: inline-grid; place-items: center; min-width: 38px; min-height: 38px; border: 1px solid var(--llu-line); border-radius: 999px; text-decoration: none; }
.llu-cart-count { min-width: 17px; height: 17px; display: inline-grid; place-items: center; margin-left: -9px; color: #fff; background: var(--llu-wine); border-radius: 999px; font-size: 10px; font-weight: 800; }
.llu-menu-toggle { display: none; appearance: none; border: 0; padding: 8px; background: transparent; font: inherit; }

.llu-hero { min-height: 690px; display: grid; align-items: center; background-color: var(--llu-cream); background-image: linear-gradient(90deg, rgba(251,247,241,.98) 0%, rgba(251,247,241,.9) 34%, rgba(251,247,241,.08) 65%), url('assets/images/hero.webp'); background-size: cover; background-position: center; }
.llu-hero__content { width: min(630px, 52%); padding-block: 100px; }
.llu-kicker { display: block; margin-bottom: 19px; color: var(--llu-wine); font-size: 11px; font-weight: 800; letter-spacing: .22em; text-transform: uppercase; }
.llu-hero h1 { margin: 0 0 25px; max-width: 650px; font-family: var(--llu-serif); font-size: clamp(52px, 7vw, 92px); font-weight: 400; letter-spacing: -.055em; line-height: .96; }
.llu-hero p { max-width: 530px; margin: 0 0 34px; color: #59494d; font-size: 18px; }
.llu-button, .button, button.button, input.button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button {
  display: inline-flex; justify-content: center; align-items: center; min-height: 50px; padding: 12px 24px; border: 1px solid var(--llu-plum); border-radius: 0; color: #fff; background: var(--llu-plum); font-family: var(--llu-sans); font-size: 12px; font-weight: 800; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; transition: .22s ease;
}
.llu-button:hover, .button:hover, button.button:hover, .woocommerce a.button:hover { color: #fff; background: var(--llu-wine); transform: translateY(-1px); }
.llu-button--ghost { margin-left: 10px; color: var(--llu-plum); background: transparent; }

.llu-service-strip { border-block: 1px solid var(--llu-line); background: #fff; }
.llu-service-grid { display: grid; grid-template-columns: repeat(3,1fr); }
.llu-service { padding: 25px; text-align: center; }
.llu-service + .llu-service { border-left: 1px solid var(--llu-line); }
.llu-service strong { display: block; font-family: var(--llu-serif); font-size: 17px; font-weight: 400; }
.llu-service span { color: var(--llu-muted); font-size: 12px; }

.llu-section { padding-block: 92px; }
.llu-section--tint { background: var(--llu-cream); }
.llu-section__head { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 38px; }
.llu-section h2, .llu-editorial h2 { margin: 0; font-family: var(--llu-serif); font-size: clamp(37px, 5vw, 62px); font-weight: 400; letter-spacing: -.045em; line-height: 1.03; }
.llu-section__head p { max-width: 530px; margin: 0; color: var(--llu-muted); }
.llu-text-link { color: var(--llu-wine); font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }

.llu-category-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
.llu-category-card { position: relative; min-height: 370px; display: flex; align-items: end; overflow: hidden; padding: 25px; color: #fff; background: var(--llu-plum); text-decoration: none; }
.llu-category-card::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 25%, rgba(31,12,20,.84)); }
.llu-category-card:nth-child(2) { background: #8f5361; }
.llu-category-card:nth-child(3) { background: #a98277; }
.llu-category-card:nth-child(4) { background: #37242a; }
.llu-category-card__art { position: absolute; inset: 0; opacity: .74; background: radial-gradient(circle at 70% 25%, rgba(255,255,255,.36), transparent 32%), linear-gradient(135deg, transparent 40%, rgba(255,255,255,.18)); transform: scale(1); transition: transform .5s ease; }
.llu-category-card:hover .llu-category-card__art { transform: scale(1.05); }
.llu-category-card__copy { position: relative; z-index: 1; }
.llu-category-card small { display: block; margin-bottom: 8px; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.llu-category-card h3 { margin: 0; font-family: var(--llu-serif); font-size: 31px; font-weight: 400; line-height: 1.04; }

.llu-editorial { display: grid; grid-template-columns: 1.05fr .95fr; min-height: 570px; background: var(--llu-plum); color: #fff; }
.llu-editorial__image { background: url('assets/images/hero.webp') center/cover; }
.llu-editorial__copy { display: grid; align-content: center; padding: clamp(45px,7vw,105px); }
.llu-editorial__mark { width: 42px; height: 42px; margin-bottom: 18px; object-fit: contain; }
.llu-editorial__copy p { max-width: 520px; color: rgba(255,255,255,.78); }
.llu-editorial .llu-button { width: fit-content; border-color: #fff; background: #fff; color: var(--llu-plum); }

.llu-journal-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.llu-post-card { background: #fff; border: 1px solid var(--llu-line); }
.llu-post-card__media { aspect-ratio: 16/10; background: var(--llu-blush); overflow: hidden; }
.llu-post-card__media img { width: 100%; height: 100%; object-fit: cover; }
.llu-post-card__body { padding: 25px; }
.llu-post-card h3 { margin: 0 0 10px; font-family: var(--llu-serif); font-size: 25px; font-weight: 400; line-height: 1.14; }
.llu-post-card p { color: var(--llu-muted); font-size: 14px; }

.llu-content { width: min(900px, calc(100% - 40px)); margin: 0 auto; padding-block: 70px 100px; }
.llu-content--wide { width: min(1240px, calc(100% - 40px)); }
.llu-page-header { padding: 70px 20px; background: var(--llu-cream); text-align: center; }
.llu-page-header h1 { max-width: 900px; margin: 0 auto; font-family: var(--llu-serif); font-size: clamp(43px,6vw,72px); font-weight: 400; letter-spacing: -.045em; line-height: 1; }
.entry-content h2, .entry-content h3 { font-family: var(--llu-serif); font-weight: 400; }
.entry-content h2 { margin-top: 2em; font-size: 38px; }

.llu-footer { padding-block: 70px 28px; color: rgba(255,255,255,.78); background: var(--llu-ink); }
.llu-footer__grid { display: grid; grid-template-columns: 1.5fr repeat(3,1fr); gap: 55px; }
.llu-footer__brand a { display: inline-block; }
.llu-footer__logo { display: block; width: min(100%, 310px); height: auto; margin-bottom: 20px; }
.llu-footer__brand p { max-width: 370px; }
.llu-footer h2 { margin: 0 0 15px; color: #fff; font-family: var(--llu-serif); font-size: 29px; font-weight: 400; }
.llu-footer h3 { margin: 0 0 15px; color: #fff; font-size: 11px; letter-spacing: .16em; text-transform: uppercase; }
.llu-footer ul { margin: 0; padding: 0; list-style: none; }
.llu-footer li { margin: 8px 0; }
.llu-footer a { text-decoration: none; }
.llu-footer a:hover { color: #fff; }
.llu-footer__bottom { margin-top: 55px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.14); display: flex; justify-content: space-between; gap: 20px; font-size: 12px; }
.llu-footer__legal { display: inline-flex; align-items: center; gap: 9px; }
.llu-footer__mark { width: 22px; height: 22px; object-fit: contain; }

/* WooCommerce */
.woocommerce .woocommerce-breadcrumb { margin: 25px auto; width: min(1240px,calc(100% - 40px)); color: var(--llu-muted); font-size: 12px; }
.woocommerce-products-header { margin-bottom: 36px; }
.llu-shop-hero { min-height: 390px; display: grid; grid-template-columns: 1.02fr .98fr; overflow: hidden; background: linear-gradient(135deg,#f7e9e7,var(--llu-cream)); }
.llu-shop-hero__copy { display: grid; align-content: center; padding: clamp(48px,7vw,95px); }
.llu-shop-hero h1 { max-width: 760px; margin: 0 0 20px; font-family: var(--llu-serif); font-size: clamp(48px,6vw,78px); font-weight: 400; letter-spacing: -.05em; line-height: .98; }
.llu-shop-hero__description { max-width: 620px; color: #5f5054; font-size: 16px; }
.llu-shop-hero__description p { margin: 0; }
.llu-shop-hero__media { min-height: 390px; background-color: #eee6df; background-position: center; background-size: cover; }
.llu-shop-hero__media::after { content: ''; display: block; width: 100%; height: 100%; background: linear-gradient(90deg,rgba(251,247,241,.28),transparent 35%); }
.llu-subcategories { width: min(1240px,calc(100% - 40px)); display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 13px; margin: -34px auto 48px; position: relative; z-index: 2; }
.llu-subcategory { min-height: 112px; display: grid; grid-template-columns: 92px 1fr; align-items: center; overflow: hidden; color: var(--llu-ink); background: #fff; border: 1px solid var(--llu-line); box-shadow: 0 12px 28px rgba(42,25,31,.07); text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.llu-subcategory:hover { color: var(--llu-wine); transform: translateY(-2px); box-shadow: 0 18px 32px rgba(42,25,31,.11); }
.llu-subcategory__image { align-self: stretch; background: #f5efea center/cover no-repeat; }
.llu-subcategory > span:last-child { padding: 14px; }
.llu-subcategory strong { display: block; font-family: var(--llu-serif); font-size: 19px; font-weight: 400; line-height: 1.08; }
.llu-subcategory small { display: block; margin-top: 6px; color: var(--llu-muted); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.woocommerce .woocommerce-result-count { margin-left: max(20px,calc((100% - 1240px)/2)); color: var(--llu-muted); font-size: 13px; }
.woocommerce .woocommerce-ordering { margin-right: max(20px,calc((100% - 1240px)/2)); }
.woocommerce .woocommerce-ordering select { min-height: 42px; padding: 8px 36px 8px 12px; border: 1px solid var(--llu-line); background: #fff; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 30px 18px; }
.woocommerce.archive ul.products, .woocommerce-shop ul.products { width: min(1240px,calc(100% - 40px)); margin: 70px auto 90px; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { width: auto !important; margin: 0 !important; padding-bottom: 16px; }
.woocommerce ul.products li.product a img { aspect-ratio: 1/1.18; object-fit: contain; margin: 0 0 18px; padding: 16px; background: linear-gradient(145deg,#fbf8f4,#f4eee8); transition: transform .3s ease; }
.woocommerce ul.products li.product:hover a img { transform: translateY(-3px); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0; font-family: var(--llu-serif); font-size: 19px; font-weight: 400; line-height: 1.2; }
.woocommerce ul.products li.product .price { color: var(--llu-wine); font-size: 15px; font-weight: 700; }
.woocommerce ul.products li.product .button { min-height: 42px; width: 100%; margin-top: 10px; }
.single-product div.product { width: min(1240px,calc(100% - 40px)); margin: 48px auto 100px; }
.single-product div.product .woocommerce-product-gallery { width: 51%; }
.single-product div.product .summary { position: relative; width: 43%; margin-bottom: 75px; padding: clamp(25px,3vw,48px); background: #fff; border: 1px solid var(--llu-line); box-shadow: var(--llu-shadow); }
.llu-product-eyebrow { display: block; margin-bottom: 15px; color: var(--llu-wine); font-size: 10px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.single-product div.product .product_title { margin-bottom: 22px; font-family: var(--llu-serif); font-size: clamp(38px,4.3vw,58px); font-weight: 400; line-height: 1.02; letter-spacing: -.035em; }
.single-product div.product p.price { color: var(--llu-wine); font-size: 24px; }
.llu-product-intro { margin: 0 0 24px; color: #5d4f53; font-size: 15px; }
.single-product .woocommerce-product-gallery__image { background: linear-gradient(145deg,#fbf8f4,#f3ede7); }
.single-product .woocommerce-product-gallery__image img { width: 100%; padding: 28px; object-fit: contain; }
.single-product div.product form.cart { display: flex; margin: 24px 0 17px; }
.single-product div.product form.cart .button { flex: 1; min-height: 54px; }
.woocommerce div.product form.cart .variations select, .woocommerce .quantity .qty, .woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select { min-height: 48px; border: 1px solid var(--llu-line); border-radius: 0; padding: 10px 12px; background: #fff; }
.single-product .product_meta { padding-top: 17px; border-top: 1px solid var(--llu-line); color: var(--llu-muted); font-size: 11px; line-height: 1.7; }
.single-product .product_meta > span { display: block; }
.llu-purchase-assurance { display: grid; grid-template-columns: 1fr; margin: 22px 0 18px; border-block: 1px solid var(--llu-line); }
.llu-purchase-assurance a { display: flex; justify-content: space-between; gap: 15px; padding: 12px 0; text-decoration: none; }
.llu-purchase-assurance a + a { border-top: 1px solid var(--llu-line); }
.llu-purchase-assurance strong { font-family: var(--llu-serif); font-size: 15px; font-weight: 400; }
.llu-purchase-assurance span { color: var(--llu-muted); font-size: 11px; text-align: right; }
.llu-product-details { clear: both; display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(45px,8vw,110px); margin: 0 0 70px; padding: clamp(48px,7vw,90px); color: #fff; background: var(--llu-plum); }
.llu-product-details__intro h2 { max-width: 520px; margin: 0 0 20px; font-family: var(--llu-serif); font-size: clamp(36px,4vw,56px); font-weight: 400; letter-spacing: -.04em; line-height: 1.02; }
.llu-product-details__intro p { max-width: 520px; color: rgba(255,255,255,.72); }
.llu-product-details__intro .llu-kicker, .llu-product-details__intro .llu-text-link { color: #f1cfd3; }
.llu-product-facts { margin: 0; border-top: 1px solid rgba(255,255,255,.25); }
.llu-product-facts > div { display: grid; grid-template-columns: minmax(120px,.55fr) 1fr; gap: 22px; padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.2); }
.llu-product-facts dt { color: rgba(255,255,255,.65); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.llu-product-facts dd { margin: 0; font-size: 14px; }
.llu-product-facts a, .llu-product-facts .stock { color: #fff; }
.woocommerce div.product .woocommerce-tabs { padding-top: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; border-bottom: 1px solid var(--llu-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: 0; background: transparent; }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 850px; padding-block: 20px 35px; }
.woocommerce div.product .woocommerce-tabs .panel h2, .single-product .related > h2 { font-family: var(--llu-serif); font-size: clamp(34px,4vw,50px); font-weight: 400; }
.single-product .related { margin-top: 75px; }
.woocommerce-cart .woocommerce, .woocommerce-checkout .woocommerce, .woocommerce-account .woocommerce { width: min(1180px,calc(100% - 40px)); margin: 55px auto 100px; }
.woocommerce table.shop_table { border: 1px solid var(--llu-line); border-radius: 0; }
.woocommerce-info, .woocommerce-message, .woocommerce-error { border-top-color: var(--llu-wine); background: var(--llu-cream); }
.woocommerce a.remove { color: var(--llu-wine) !important; }
.woocommerce a.remove:hover { background: var(--llu-wine); }

@media (max-width: 980px) {
  .llu-header__inner { grid-template-columns: 1fr auto 1fr; min-height: 72px; }
  .llu-menu-toggle { display: inline-block; justify-self: start; }
  .llu-nav { display: none; position: absolute; inset: 100% 0 auto; padding: 25px 20px; background: var(--llu-paper); border-bottom: 1px solid var(--llu-line); }
  .llu-nav.is-open { display: block; }
  .llu-nav > ul { flex-direction: column; align-items: stretch; gap: 0; }
  .llu-nav > ul > li { width: 100%; padding: 8px 0; border-bottom: 1px solid var(--llu-line); }
  .llu-mega__trigger { justify-content: space-between; }
  .llu-mega__panel { position: static; display: none; visibility: visible; opacity: 1; transform: none; margin: 10px -20px -8px; padding: 24px 20px; border-bottom: 0; box-shadow: none; }
  .llu-mega.is-open .llu-mega__panel { display: block; }
  .llu-mega__inner { width: 100%; grid-template-columns: 1fr 1fr; }
  .llu-mega__feature { display: none; }
  .llu-actions .llu-account { display: none; }
  .llu-category-grid, .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .llu-subcategories { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .single-product div.product .summary { position: static; padding: 28px; }
  .llu-product-details { grid-template-columns: 1fr; }
  .llu-footer__grid { grid-template-columns: repeat(2,1fr); }
  .llu-editorial { grid-template-columns: 1fr; }
  .llu-editorial__image { min-height: 400px; }
}

@media (max-width: 700px) {
  .admin-bar .llu-header { top: 46px; }
  .llu-wrap { width: min(100% - 28px,1240px); }
  .llu-logo__image { width: 190px; }
  .llu-hero { min-height: 720px; align-items: end; background-image: linear-gradient(180deg, rgba(251,247,241,.03) 22%, rgba(251,247,241,.98) 68%), url('assets/images/hero-mobile.webp'); background-position: center top; }
  .llu-hero__content { width: 100%; padding-block: 300px 55px; }
  .llu-hero h1 { font-size: 51px; }
  .llu-button { width: 100%; }
  .llu-button--ghost { margin: 10px 0 0; }
  .llu-service-grid { grid-template-columns: 1fr; }
  .llu-service + .llu-service { border-left: 0; border-top: 1px solid var(--llu-line); }
  .llu-mega__inner { grid-template-columns: 1fr; gap: 24px; }
  .llu-mega__column h2 { margin-bottom: 8px; font-size: 21px; }
  .llu-section { padding-block: 62px; }
  .llu-section__head { display: block; }
  .llu-section__head p, .llu-section__head .llu-text-link { display: block; margin-top: 15px; }
  .llu-category-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .llu-category-card { min-height: 245px; padding: 17px; }
  .llu-category-card h3 { font-size: 24px; }
  .llu-journal-grid { grid-template-columns: 1fr; }
  .llu-footer__grid { grid-template-columns: 1fr; gap: 35px; }
  .llu-footer__bottom { display: block; }
  .woocommerce ul.products { gap: 25px 10px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 16px; }
  .llu-shop-hero { min-height: 0; grid-template-columns: 1fr; }
  .llu-shop-hero__copy { padding: 50px 22px; }
  .llu-shop-hero h1 { font-size: 48px; }
  .llu-shop-hero__media { min-height: 300px; order: -1; }
  .llu-subcategories { grid-template-columns: 1fr 1fr; gap: 8px; margin-top: -24px; }
  .llu-subcategory { min-height: 0; grid-template-columns: 1fr; }
  .llu-subcategory__image { min-height: 120px; }
  .single-product div.product { width: min(100% - 28px,1240px); margin-top: 25px; }
  .single-product div.product .woocommerce-product-gallery, .single-product div.product .summary { float: none; width: 100%; }
  .single-product div.product .summary { margin-top: 16px; padding: 22px; }
  .single-product div.product .product_title { font-size: 40px; }
  .single-product .woocommerce-product-gallery__image img { padding: 16px; }
  .llu-purchase-assurance a { display: block; }
  .llu-purchase-assurance span { display: block; margin-top: 2px; text-align: left; }
  .llu-product-details { margin-inline: -14px; padding: 45px 22px; }
  .llu-product-facts > div { grid-template-columns: 1fr; gap: 5px; }
}

/* WooCommerce block-cart and block-checkout parity — 1.3.2 */
.wc-block-cart,
.wc-block-checkout,
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
  width: min(1180px, calc(100% - 64px));
  margin-inline: auto;
}
.wc-block-cart__main,
.wc-block-components-sidebar,
.wc-block-checkout__main,
.wc-block-checkout__sidebar {
  overflow: hidden;
  border-radius: var(--llu-radius-lg);
}
.wc-block-cart__main,
.wc-block-checkout__main {
  padding: clamp(20px, 3vw, 38px);
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(32,22,25,.07);
}
.wc-block-components-sidebar,
.wc-block-checkout__sidebar {
  padding: clamp(20px, 3vw, 32px);
  background: #f7f2ee;
}
.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-components-button:not(.is-link),
.wc-block-components-checkout-place-order-button,
.wc-block-components-totals-coupon__button {
  min-height: 50px;
  padding-inline: 28px !important;
  border-radius: 999px !important;
}
.wc-block-components-quantity-selector,
.wc-block-components-text-input input,
.wc-block-components-combobox .components-combobox-control__input,
.wc-block-components-address-form input,
.wc-block-components-address-form select {
  border-radius: var(--llu-radius-md) !important;
}
.wc-block-cart-items__row,
.wc-block-components-order-summary-item {
  border-radius: var(--llu-radius-md);
}
.llu-block-recommendation-host {
  width: 100%;
  padding-top: 1px;
}
.llu-block-recommendation-host .llu-recommendations {
  margin-top: 68px;
}

@media (max-width: 700px) {
  .wc-block-cart,
  .wc-block-checkout,
  .wp-block-woocommerce-cart,
  .wp-block-woocommerce-checkout {
    width: min(100% - 20px, 1180px);
  }
  .wc-block-cart__main,
  .wc-block-components-sidebar,
  .wc-block-checkout__main,
  .wc-block-checkout__sidebar { border-radius: 20px; }
}

/* Luxury commerce system — 1.3.0
   Deliberately self-contained: no page builder, font service or paid extension. */
body { background: #fdfbf8; }
.llu-wrap { width: min(1360px, calc(100% - 64px)); }
.llu-notice { padding: 8px 20px; background: #24181c; font-size: 10px; font-weight: 650; letter-spacing: .2em; }
.llu-header { background: rgba(253,251,248,.97); box-shadow: 0 1px 0 rgba(31,22,25,.09); }
.llu-header__inner {
  min-height: 132px;
  grid-template-columns: 1fr auto 1fr;
  grid-template-rows: 79px 53px;
  gap: 0 30px;
}
.llu-logo { grid-column: 2; grid-row: 1; }
.llu-logo__image { width: clamp(235px,21vw,296px); }
.llu-nav { grid-column: 1 / -1; grid-row: 2; justify-self: center; align-self: stretch; display: flex; align-items: center; }
.llu-nav > ul { gap: clamp(22px,2.2vw,40px); }
.llu-nav a { position: relative; color: #31282b; font-size: 11px; font-weight: 650; letter-spacing: .105em; text-transform: uppercase; }
.llu-nav > ul > li > a::after,
.llu-mega__trigger > a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: -10px; height: 1px; background: var(--llu-wine); transition: right .22s ease; }
.llu-nav > ul > li:hover > a::after,
.llu-nav > ul > li > a:focus::after,
.llu-mega:hover .llu-mega__trigger > a::after { right: 0; }
.llu-actions { grid-column: 3; grid-row: 1; gap: 8px; }
.llu-icon-link { min-width: 36px; min-height: 36px; border: 0; border-radius: 0; }
.llu-icon-link:hover { color: var(--llu-wine); background: #f4ece9; }
.llu-icon-link svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }
.llu-cart-count { margin-left: -12px; margin-top: -22px; background: var(--llu-wine); }

.llu-mega__panel { padding: 46px 0 50px; background: rgba(253,251,248,.995); box-shadow: 0 28px 70px rgba(25,17,20,.14); }
.llu-mega__inner { width: min(1360px,calc(100% - 64px)); grid-template-columns: 1fr 1fr .85fr 1.35fr; gap: clamp(36px,4vw,72px); }
.llu-mega__column h2 { margin-bottom: 22px; color: #857579; font-family: var(--llu-sans); font-size: 10px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.llu-mega__column > ul { gap: 10px; }
.llu-mega__column li a { padding: 2px 0 6px; color: #2b2225; font-family: var(--llu-serif); font-size: 17px; font-weight: 400; letter-spacing: -.01em; text-transform: none; }
.llu-mega__column li a:hover { color: var(--llu-wine); }
.llu-mega__column li a span { font-family: var(--llu-sans); font-size: 9px; letter-spacing: .08em; }
.llu-mega__feature { position: relative; min-height: 255px; overflow: hidden; display: grid; align-content: end; padding: 34px; background: #2a1b20 url('assets/images/hero.webp') center/cover no-repeat; isolation: isolate; }
.llu-mega__feature::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,rgba(27,17,21,.05),rgba(27,17,21,.88)); }
.llu-mega__feature h2 { margin-bottom: 12px; font-size: 31px; }
.llu-mega__feature p { margin: 0 0 18px; color: rgba(255,255,255,.86); }

.llu-category-grid { gap: 16px; }
.llu-category-card { min-height: 330px; color: var(--llu-ink); background: #efe7e3; border: 1px solid rgba(32,22,25,.08); }
.llu-category-card::before { background: linear-gradient(180deg,transparent 40%,rgba(253,251,248,.93)); }
.llu-category-card:nth-child(2) { background: #e6d7d4; }
.llu-category-card:nth-child(3) { background: #d8c6c1; }
.llu-category-card:nth-child(4) { color: #fff; background: #2c2024; }
.llu-category-card:nth-child(4)::before { background: linear-gradient(180deg,transparent 35%,rgba(27,18,22,.92)); }
.llu-category-card__art { opacity: .58; background: radial-gradient(circle at 72% 20%,rgba(255,255,255,.8),transparent 27%), linear-gradient(135deg,transparent 48%,rgba(255,255,255,.3)); }
.llu-category-card small { color: inherit; font-size: 9px; letter-spacing: .2em; }
.llu-category-card h3 { font-size: 35px; letter-spacing: -.035em; }

/* Collection and taxonomy pages */
.woocommerce .woocommerce-breadcrumb { width: min(1360px,calc(100% - 64px)); margin: 20px auto; color: #8c7e81; font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.woocommerce-products-header { margin-bottom: 0; }
.llu-shop-hero { min-height: 510px; grid-template-columns: 1fr 1fr; background: #f1e8e4; }
.llu-shop-hero__copy { position: relative; padding: clamp(64px,8vw,120px); }
.llu-shop-hero__copy::after { content: ''; width: 42px; height: 1px; position: absolute; left: clamp(64px,8vw,120px); bottom: clamp(45px,6vw,75px); background: var(--llu-wine); }
.llu-shop-hero h1 { max-width: 610px; margin-bottom: 25px; font-size: clamp(55px,6vw,86px); letter-spacing: -.058em; }
.llu-shop-hero__description { max-width: 510px; color: #65575a; font-size: 15px; line-height: 1.8; }
.llu-shop-hero__media { position: relative; min-height: 510px; background-color: #f7f3ee; background-position: center; background-size: contain; background-repeat: no-repeat; }
.llu-shop-hero__media::after { background: linear-gradient(90deg,rgba(241,232,228,.22),transparent 28%); }
.llu-subcategories { width: min(1360px,calc(100% - 64px)); grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin: -38px auto 58px; }
.llu-subcategory { min-height: 118px; grid-template-columns: 84px 1fr; border: 0; box-shadow: 0 15px 40px rgba(35,22,27,.09); }
.llu-subcategory strong { font-size: 18px; }
.woocommerce .woocommerce-result-count { margin-left: max(32px,calc((100% - 1360px)/2)); color: #817478; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; }
.woocommerce .woocommerce-ordering { margin-right: max(32px,calc((100% - 1360px)/2)); }
.woocommerce .woocommerce-ordering select { min-width: 210px; border-width: 0 0 1px; border-color: #8d8083; background-color: transparent; color: #3c3034; font-size: 12px; }

/* Quiet, editorial catalogue cards */
.woocommerce ul.products { gap: 58px 26px; }
.woocommerce.archive ul.products,
.woocommerce-shop ul.products { width: min(1360px,calc(100% - 64px)); grid-template-columns: repeat(3,minmax(0,1fr)); margin: 50px auto 110px; }
.woocommerce ul.products li.product { display: flex; flex-direction: column; padding: 0; background: transparent; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link { display: flex; flex: 1; flex-direction: column; text-decoration: none; }
.woocommerce ul.products li.product a img { aspect-ratio: 4/4.65; margin: 0 0 22px; padding: clamp(20px,3vw,42px); background: #f3eee8; transition: transform .45s cubic-bezier(.2,.75,.25,1), background-color .3s ease; }
.woocommerce ul.products li.product:hover a img { transform: scale(1.018); background: #eee7df; }
.llu-loop-context { display: block; margin-bottom: 7px; color: #8b777d; font-size: 9px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 43px; display: -webkit-box; overflow: hidden; margin: 0; padding: 0; color: #2c2326; font-family: var(--llu-sans); font-size: 14px; font-weight: 550; letter-spacing: .005em; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.woocommerce ul.products li.product .price { margin-top: 10px; color: #5f182f; font-family: var(--llu-serif); font-size: 17px; font-weight: 400; }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button { align-self: flex-start; width: auto; min-height: 0; margin-top: 14px; padding: 5px 0 7px; border: 0; border-bottom: 1px solid #33272b; color: #33272b; background: transparent; font-size: 9px; font-weight: 750; letter-spacing: .17em; }
.woocommerce ul.products li.product .button::after { content: '  →'; }
.woocommerce ul.products li.product .button:hover { color: var(--llu-wine); background: transparent; border-color: var(--llu-wine); transform: none; }

/* Single product: deterministic two-column grid, then normal full-width flow. */
.single-product div.product {
  width: min(1360px,calc(100% - 64px));
  display: grid;
  grid-template-columns: minmax(0,1.12fr) minmax(390px,.88fr);
  column-gap: clamp(55px,6vw,100px);
  align-items: start;
  margin: 55px auto 120px;
}
.single-product div.product .woocommerce-product-gallery { grid-column: 1; float: none !important; width: 100% !important; margin: 0; }
.single-product .woocommerce-product-gallery__wrapper { margin: 0; }
.single-product .woocommerce-product-gallery__image { min-height: 670px; display: grid !important; place-items: center; background: #f3eee8; }
.single-product .woocommerce-product-gallery__image img { max-height: 710px; width: 100%; padding: clamp(34px,5vw,72px); object-fit: contain; }
.single-product div.product .summary { grid-column: 2; float: none !important; width: 100% !important; margin: 0; padding: 20px 0 0; background: transparent; border: 0; box-shadow: none; }
.llu-product-eyebrow { margin-bottom: 19px; color: #7c666d; font-size: 9px; letter-spacing: .2em; }
.single-product div.product .product_title { max-width: 560px; margin: 0 0 24px; font-size: clamp(38px,3.6vw,52px); letter-spacing: -.045em; line-height: 1.05; }
.single-product div.product p.price { margin: 0 0 27px; color: #5f182f; font-family: var(--llu-serif); font-size: 22px; font-weight: 400; }
.single-product .woocommerce-product-details__short-description,
.llu-product-intro { max-width: 520px; margin: 0 0 28px; color: #675a5d; font-size: 14px; line-height: 1.78; }
.single-product div.product form.cart { gap: 8px; margin: 27px 0 25px; }
.single-product div.product form.cart .button.single_add_to_cart_button,
.woocommerce div.product form.cart .button.alt { min-height: 55px; color: #fff !important; background: var(--llu-gradient-primary) !important; border-color: transparent !important; box-shadow: 0 12px 28px rgba(112,28,72,.24); }
.single-product div.product form.cart .button.single_add_to_cart_button:hover,
.woocommerce div.product form.cart .button.alt:hover { background: var(--llu-gradient-violet) !important; border-color: transparent !important; box-shadow: 0 16px 34px rgba(87,31,102,.3); }
.single-product .product_meta { display: none; }
.llu-purchase-assurance { margin: 26px 0 0; border-color: rgba(32,22,25,.12); }
.llu-purchase-assurance a { padding: 14px 0; }
.llu-purchase-assurance strong { color: #2c2326; font-family: var(--llu-sans); font-size: 12px; font-weight: 600; }
.llu-purchase-assurance span { color: #817478; font-size: 10px; }
.llu-product-details,
.woocommerce div.product .woocommerce-tabs,
.single-product .upsells,
.single-product .related { grid-column: 1 / -1; float: none; width: 100%; }
.llu-product-details { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(55px,8vw,120px); margin: 90px 0 0; padding: clamp(55px,7vw,95px); color: var(--llu-ink); background: #eee5e0; }
.llu-product-details__intro h2 { max-width: 480px; font-size: clamp(38px,4vw,56px); }
.llu-product-details__intro p { color: #66585c; font-size: 14px; }
.llu-product-details__intro .llu-kicker,
.llu-product-details__intro .llu-text-link { color: var(--llu-wine); }
.llu-product-facts { border-top-color: rgba(32,22,25,.18); }
.llu-product-facts > div { border-bottom-color: rgba(32,22,25,.15); }
.llu-product-facts dt { color: #7c6d71; }
.llu-product-facts dd { color: #2d2427; }
.llu-product-facts a,
.llu-product-facts .stock { color: #2d2427; }
.woocommerce div.product .woocommerce-tabs { margin-top: 74px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; gap: 32px; margin: 0 0 35px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; padding: 0 0 12px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: #75666a; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom: 1px solid var(--llu-wine); }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 880px; color: #594d50; font-size: 15px; line-height: 1.85; }
.woocommerce div.product .woocommerce-tabs .panel h2,
.single-product .related > h2 { font-size: clamp(31px,3.2vw,45px); }
.single-product .related { margin-top: 85px; padding-top: 55px; border-top: 1px solid var(--llu-line); }

/* Cross-page merchandising, using the same quiet card system. */
.llu-recommendations { width: min(1360px,calc(100% - 64px)); margin: 95px auto 115px; padding-top: 60px; border-top: 1px solid var(--llu-line); }
.single-product div.product .llu-recommendations { grid-column: 1 / -1; width: 100%; }
.llu-recommendations__head { max-width: 680px; margin-bottom: 38px; }
.llu-recommendations__head h2 { margin: 0; font-family: var(--llu-serif); font-size: clamp(36px,4vw,54px); font-weight: 400; letter-spacing: -.045em; line-height: 1.04; }
.llu-recommendations ul.products { grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0; }
.llu-recommendations--checkout { margin-top: 70px; }
.llu-recommendations--checkout ul.products li.product .button { display: none; }
.woocommerce-cart .llu-recommendations,
.woocommerce-checkout .llu-recommendations { clear: both; }

@media (max-width: 1180px) and (min-width: 981px) {
  .llu-nav > ul { gap: 22px; }
  .llu-nav-journal { display: none; }
}

@media (max-width: 980px) {
  .llu-wrap { width: min(100% - 40px,1360px); }
  .llu-header__inner { min-height: 78px; grid-template-columns: 1fr auto 1fr; grid-template-rows: 78px; }
  .llu-logo { grid-column: 2; grid-row: 1; }
  .llu-actions { grid-column: 3; grid-row: 1; }
  .llu-nav { grid-column: auto; grid-row: auto; align-items: stretch; }
  .llu-nav > ul > li > a::after,
  .llu-mega__trigger > a::after { display: none; }
  .llu-mega__panel { padding: 25px 20px; }
  .llu-mega__inner { width: 100%; gap: 30px; }
  .woocommerce.archive ul.products,
  .woocommerce-shop ul.products { width: min(100% - 40px,1360px); grid-template-columns: repeat(2,minmax(0,1fr)); }
  .single-product div.product { width: min(100% - 40px,1360px); grid-template-columns: 1fr 1fr; gap: 38px; }
  .single-product .woocommerce-product-gallery__image { min-height: 520px; }
  .llu-product-details { grid-template-columns: 1fr; }
  .llu-recommendations { width: min(100% - 40px,1360px); }
  .llu-recommendations ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 700px) {
  .llu-wrap { width: min(100% - 28px,1360px); }
  .llu-actions { gap: 2px; }
  .llu-actions .llu-search { display: none; }
  .llu-icon-link { min-width: 33px; }
  .llu-shop-hero { grid-template-columns: 1fr; }
  .llu-shop-hero__media { min-height: 340px; background-size: contain; }
  .llu-shop-hero__copy { padding: 48px 24px 65px; }
  .llu-shop-hero__copy::after { left: 24px; bottom: 36px; }
  .llu-shop-hero h1 { font-size: 49px; }
  .llu-subcategories { width: min(100% - 28px,1360px); }
  .woocommerce.archive ul.products,
  .woocommerce-shop ul.products { width: min(100% - 28px,1360px); gap: 38px 12px; }
  .woocommerce ul.products li.product a img { padding: 16px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 40px; font-size: 13px; }
  .single-product div.product { width: min(100% - 28px,1360px); display: grid; grid-template-columns: 1fr; gap: 0; margin-top: 24px; }
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary { grid-column: 1; width: 100% !important; }
  .single-product .woocommerce-product-gallery__image { min-height: 0; }
  .single-product div.product .summary { margin-top: 20px; padding: 10px 0 0; }
  .single-product div.product .product_title { font-size: 38px; }
  .llu-product-details { margin-top: 60px; padding: 48px 24px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { gap: 18px; overflow-x: auto; }
  .llu-recommendations { width: min(100% - 28px,1360px); margin-block: 70px 85px; padding-top: 45px; }
  .llu-recommendations ul.products { gap: 38px 12px; }
}
/* Framed, softer commerce finish — 1.3.1 */
:root {
  --llu-radius-xl: 32px;
  --llu-radius-lg: 24px;
  --llu-radius-md: 16px;
}

/* One centered visual frame across editorial and commerce views. */
.llu-hero,
.llu-service-strip,
.llu-editorial,
.llu-shop-hero {
  width: min(1360px, calc(100% - 64px));
  margin-inline: auto;
}
.llu-hero,
.llu-shop-hero,
.llu-editorial { overflow: hidden; border-radius: var(--llu-radius-xl); }
.llu-hero { margin-top: 28px; }
.llu-service-strip { margin-top: 16px; overflow: hidden; border: 1px solid var(--llu-line); border-radius: 999px; }
.llu-shop-hero { margin-top: 28px; }
.llu-content,
.llu-content--wide,
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce { margin-inline: auto; }

/* Pill language for every transactional control. */
.llu-button,
.button,
button.button,
input.button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.single_add_to_cart_button,
.checkout-button,
.wc-forward {
  border-radius: 999px !important;
  padding-inline: 28px;
}
.woocommerce .quantity .qty,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .woocommerce-ordering select {
  border-radius: var(--llu-radius-md);
}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button {
  min-height: 38px;
  padding: 9px 17px;
  border: 1px solid rgba(37,26,30,.7);
  border-radius: 999px !important;
}
.woocommerce ul.products li.product .button:hover {
  color: #fff;
  background: #251a1e;
  border-color: #251a1e;
}

/* Rounded image and information surfaces remove the catalogue-box effect. */
.woocommerce ul.products li.product a img,
.single-product .woocommerce-product-gallery__image,
.llu-subcategory,
.llu-post-card { border-radius: var(--llu-radius-lg); }
.llu-subcategory { overflow: hidden; }
.single-product .woocommerce-product-gallery__image { overflow: hidden; }
.llu-product-details {
  overflow: hidden;
  border-radius: var(--llu-radius-xl);
  box-shadow: inset 0 0 0 1px rgba(32,22,25,.06);
}
.llu-purchase-assurance {
  padding: 4px 18px;
  background: #f7f2ee;
  border: 0;
  border-radius: var(--llu-radius-md);
}

/* Description and additional-information tabs become a quiet pill control
   with one centered editorial panel rather than hard-edged boxes. */
.woocommerce div.product .woocommerce-tabs {
  display: grid;
  justify-items: center;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
  width: fit-content;
  max-width: 100%;
  gap: 4px;
  margin-bottom: 22px;
  padding: 6px;
  overflow-x: auto;
  border: 1px solid var(--llu-line);
  border-radius: 999px;
  background: #f5efeb;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 999px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  display: block;
  padding: 10px 18px;
  white-space: nowrap;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border: 0;
  background: #fff;
  box-shadow: 0 6px 18px rgba(35,22,27,.08);
}
.woocommerce div.product .woocommerce-tabs .panel {
  width: min(960px, 100%);
  max-width: 960px;
  margin-inline: auto;
  padding: clamp(28px,5vw,58px);
  border-radius: var(--llu-radius-lg);
  background: #f7f2ee;
}

/* Cart and checkout keep their functional tables/forms but sit in a calm,
   centered frame consistent with the rest of the store. */
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout form.checkout,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-navigation {
  border-radius: var(--llu-radius-lg);
}
.woocommerce table.shop_table {
  overflow: hidden;
  border-radius: var(--llu-radius-lg);
}
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-checkout #customer_details {
  padding: clamp(22px,3vw,38px);
  border-radius: var(--llu-radius-lg);
  background: #f7f2ee;
}
.llu-recommendations { text-align: center; }
.llu-recommendations__head { margin-inline: auto; }
.llu-recommendations ul.products { text-align: left; }

@media (max-width: 700px) {
  .llu-hero,
  .llu-service-strip,
  .llu-editorial,
  .llu-shop-hero { width: min(100% - 20px, 1360px); border-radius: 22px; }
  .llu-service-strip { border-radius: 22px; }
  .llu-product-details { border-radius: 22px; }
  .woocommerce div.product .woocommerce-tabs { justify-items: stretch; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { width: 100%; }
  .woocommerce div.product .woocommerce-tabs .panel { border-radius: 20px; }
}

/* Chromatic editorial refresh — final cascade — 1.4.0 */
.llu-notice,
.llu-button:not(.llu-button--ghost),
.single-product div.product .single_add_to_cart_button,
.woocommerce a.checkout-button,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
  color:#fff !important;
  background:var(--llu-gradient-primary) !important;
  border-color:transparent !important;
  box-shadow:0 12px 28px rgba(112,28,72,.24);
}
.llu-button:not(.llu-button--ghost):hover,
.single-product div.product .single_add_to_cart_button:hover,
.woocommerce a.checkout-button:hover,
.woocommerce button.button.alt:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
  color:#fff !important;
  background:var(--llu-gradient-violet) !important;
  box-shadow:0 16px 34px rgba(87,31,102,.3);
}
.llu-button--ghost { color:#5d1737; background:rgba(255,255,255,.88); border-color:rgba(113,29,69,.45); box-shadow:0 10px 26px rgba(96,33,65,.1); }
.llu-button--ghost:hover { color:#fff; background:var(--llu-gradient-primary); border-color:transparent; }
.llu-service-strip { color:#fff; background:var(--llu-gradient-primary); border-color:rgba(255,255,255,.18); box-shadow:var(--llu-shadow-colour); }
.llu-service span { color:rgba(255,255,255,.76); }
.llu-service + .llu-service { border-color:rgba(255,255,255,.22); }
.llu-section--tint { background:radial-gradient(circle at 12% 8%,rgba(224,93,142,.2),transparent 28%),linear-gradient(145deg,#fff9fb 0%,#f7dce7 100%); }

.llu-category-card,
.llu-category-card:nth-child(2),
.llu-category-card:nth-child(3),
.llu-category-card:nth-child(4) { color:#fff; border-color:rgba(255,255,255,.16); box-shadow:var(--llu-shadow-colour); }
.llu-category-card { background:var(--llu-gradient-primary); }
.llu-category-card:nth-child(2) { background:var(--llu-gradient-violet); }
.llu-category-card:nth-child(3) { background:var(--llu-gradient-sunset); }
.llu-category-card:nth-child(4) { background:linear-gradient(135deg,#1d1118 0%,#4e1734 54%,#852552 100%); }
.llu-category-card::before,
.llu-category-card:nth-child(4)::before { background:linear-gradient(180deg,rgba(25,8,18,.02) 28%,rgba(25,8,18,.86) 100%); }
.llu-category-card__art { opacity:.82; background:radial-gradient(circle at 76% 18%,rgba(255,255,255,.34),transparent 28%),radial-gradient(circle at 15% 75%,rgba(255,176,214,.28),transparent 33%); }

.llu-shop-hero { background:radial-gradient(circle at 9% 10%,rgba(211,69,124,.2),transparent 33%),linear-gradient(135deg,#fff9fb 0%,#f5dce6 100%); box-shadow:var(--llu-shadow-colour); }
.llu-shop-hero__copy::after { height:3px; background:var(--llu-gradient-primary); border-radius:999px; }
.llu-shop-hero__media { background-color:#fbf0f5; }
.llu-shop-hero__media::after { background:linear-gradient(90deg,rgba(248,221,232,.42),transparent 30%); }
.llu-subcategory { background:var(--llu-gradient-blush); border:1px solid rgba(158,50,98,.14); box-shadow:0 16px 36px rgba(91,27,62,.12); }
.llu-subcategory:nth-child(2n) { background:linear-gradient(145deg,#fff 0%,#eadcf5 100%); }
.llu-subcategory:hover { color:#691b43; border-color:rgba(159,49,99,.38); box-shadow:0 20px 42px rgba(91,27,62,.19); }

.single-product .woocommerce-product-gallery__image,
.woocommerce ul.products li.product a img { background:linear-gradient(145deg,#fff 0%,#fae7ef 62%,#eed8e9 100%); }
.single-product div.product .summary { background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(251,235,243,.9)); box-shadow:0 22px 58px rgba(83,25,57,.14); }
.llu-purchase-assurance { background:linear-gradient(135deg,#fff9fc 0%,#f5dbe7 100%); box-shadow:inset 0 0 0 1px rgba(118,29,73,.09); }
.llu-product-details { position:relative; isolation:isolate; color:#fff; background:var(--llu-gradient-violet); box-shadow:var(--llu-shadow-colour); }
.llu-product-details::before,
.llu-product-details::after { content:''; position:absolute; z-index:-1; width:340px; height:340px; border-radius:50%; filter:blur(8px); pointer-events:none; }
.llu-product-details::before { top:-190px; right:-80px; background:rgba(242,117,171,.24); }
.llu-product-details::after { bottom:-210px; left:22%; background:rgba(255,189,219,.14); }
.llu-product-details__intro p { color:rgba(255,255,255,.78); }
.llu-product-details__intro .llu-kicker,
.llu-product-details__intro .llu-text-link { color:#ffd5e8; }
.llu-product-facts > div { border-color:rgba(255,255,255,.24); }
.llu-product-facts dt { color:rgba(255,255,255,.66); }
.llu-product-facts dd,
.llu-product-facts a,
.llu-product-facts .stock { color:#fff; }

.woocommerce div.product .woocommerce-tabs ul.tabs { background:linear-gradient(135deg,#f8e8ef,#eadcf5); border-color:rgba(111,34,78,.16); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { color:#fff; background:var(--llu-gradient-primary); box-shadow:0 9px 22px rgba(102,25,68,.23); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color:#fff; }
.woocommerce div.product .woocommerce-tabs .panel { background:linear-gradient(145deg,#fffafd 0%,#f6e1ea 100%); box-shadow:0 18px 44px rgba(89,29,61,.11); }
.wc-block-cart__main,
.wc-block-checkout__main { background:linear-gradient(145deg,#fff 0%,#fff7fa 100%); }
.wc-block-cart__sidebar,
.wc-block-checkout__sidebar { background:linear-gradient(145deg,#fbecf3 0%,#eadcf5 100%); }
.llu-post-card { background:linear-gradient(145deg,#fff 0%,#f9e8ef 100%); box-shadow:0 18px 42px rgba(84,25,57,.1); }
.llu-editorial__copy,
.llu-mega__feature { background:var(--llu-gradient-violet); }
.llu-mega__feature { box-shadow:0 18px 42px rgba(66,24,82,.24); }
/* LLU_150_EOF */

/* Final live-template cascade: keep this after every legacy rule. */
body.admin-bar .site-header,
.site-header { position:relative; top:auto; }
.site-main { overflow:clip; }

.single-product .site-main,
.tax-product_cat .site-main,
.post-type-archive-product .site-main { padding-top:0; }
.single-product .product,
.tax-product_cat .site-main > *,
.post-type-archive-product .site-main > * { scroll-margin-top:24px; }

.single-product div.product { align-items:stretch; }
.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary {
  min-height:640px;
  border-radius:34px;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 28px 72px rgba(64,18,49,.2);
}
.single-product div.product .woocommerce-product-gallery {
  display:grid;
  place-items:center;
  padding:clamp(28px,4vw,58px);
  background:linear-gradient(145deg,#591534 0%,#902556 52%,#4b235f 100%);
}
.single-product .woocommerce-product-gallery__image { background:#fff; border-radius:26px; overflow:hidden; }
.single-product div.product .summary {
  display:flex;
  flex-direction:column;
  justify-content:center;
  color:#fff;
  background:linear-gradient(145deg,#3d172d 0%,#792148 55%,#45215c 100%);
}
.single-product div.product .summary h1,
.single-product div.product .summary .price,
.single-product div.product .summary p,
.single-product div.product .summary .stock,
.single-product div.product .summary a { color:#fff; }
.single-product div.product .summary .llu-kicker { color:#ffd4e7; }
.llu-purchase-assurance { color:#fff; background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.18); }
.llu-purchase-assurance span { color:rgba(255,255,255,.72); }

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wp-element-button,
.wc-block-components-button,
.llu-button {
  border:0;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(110deg,#5b1739 0%,#a52662 50%,#59266f 100%);
  box-shadow:0 12px 28px rgba(88,24,62,.22);
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wp-element-button:hover,
.wc-block-components-button:hover,
.llu-button:hover { color:#fff; background:linear-gradient(110deg,#48112c 0%,#8f1e54 50%,#422052 100%); }

.llu-subcategory,
.llu-subcategory:nth-child(2n) {
  color:#fff;
  background:linear-gradient(135deg,#511632 0%,#8f2454 54%,#4b235f 100%);
  border-color:rgba(255,255,255,.14);
}
.llu-subcategory:nth-child(3n+2) { background:linear-gradient(135deg,#702047 0%,#a62c64 48%,#562a70 100%); }
.llu-subcategory:hover { color:#fff; border-color:rgba(255,255,255,.34); box-shadow:0 22px 48px rgba(73,20,53,.28); }
.llu-subcategory small { color:rgba(255,255,255,.7); }

.related.products,
.upsells.products,
.cross-sells,
.llu-recommendations { padding-block:clamp(48px,6vw,84px); }
.related.products > h2,
.upsells.products > h2,
.cross-sells > h2,
.llu-recommendations > h2 { margin:0 0 30px; line-height:1.05; }
.related.products ul.products li.product,
.upsells.products ul.products li.product,
.cross-sells ul.products li.product,
.llu-recommendations ul.products li.product { border-radius:28px; }
.related.products ul.products li.product a img,
.upsells.products ul.products li.product a img,
.cross-sells ul.products li.product a img,
.llu-recommendations ul.products li.product a img { background:linear-gradient(145deg,#5b1739 0%,#922456 55%,#4b235f 100%); }

.llu-post-card--placeholder {
  min-height:280px;
  color:#fff;
  background:linear-gradient(145deg,#4a142f 0%,#8d2453 52%,#4b235f 100%);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 22px 52px rgba(68,18,49,.22);
}
.llu-post-card--placeholder .llu-post-card__body { min-height:280px; display:flex; flex-direction:column; justify-content:flex-end; padding:clamp(28px,4vw,42px); }
.llu-post-card--placeholder h3,
.llu-post-card--placeholder p,
.llu-post-card--placeholder .llu-text-link { color:#fff; }
.llu-post-card--placeholder p { color:rgba(255,255,255,.76); }
.llu-post-card--placeholder .llu-text-link { margin-top:auto; padding-top:24px; }

@media (max-width:900px) {
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary { min-height:auto; border-radius:26px; }
  .single-product div.product .summary { padding:32px 24px; }
}

/* Verification corrections — 1.5.1. */
body.admin-bar .llu-header,
.llu-header { position:relative !important; top:auto !important; }
.woocommerce ul.products li.product .button,
.woocommerce .related.products ul.products li.product .button,
.woocommerce .upsells.products ul.products li.product .button,
.woocommerce .cross-sells ul.products li.product .button,
.woocommerce .llu-recommendations ul.products li.product .button {
  border:0 !important;
  border-radius:999px !important;
  color:#fff !important;
  background:linear-gradient(110deg,#5b1739 0%,#a52662 50%,#59266f 100%) !important;
  box-shadow:0 12px 28px rgba(88,24,62,.22) !important;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce .related.products ul.products li.product .button:hover,
.woocommerce .upsells.products ul.products li.product .button:hover,
.woocommerce .cross-sells ul.products li.product .button:hover,
.woocommerce .llu-recommendations ul.products li.product .button:hover {
  color:#fff !important;
  background:linear-gradient(110deg,#48112c 0%,#8f1e54 50%,#422052 100%) !important;
}

/* Category editorial refinement — 1.5.2. */
.tax-product_cat .llu-shop-hero.no-image {
  min-height:430px;
  display:block;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:#fff;
  background:linear-gradient(118deg,#2c1323 0%,#6f1d45 43%,#93285d 70%,#48245e 100%);
}
.tax-product_cat .llu-shop-hero.no-image::before,
.tax-product_cat .llu-shop-hero.no-image::after {
  content:'';
  position:absolute;
  z-index:-1;
  border-radius:50%;
  filter:blur(1px);
  pointer-events:none;
}
.tax-product_cat .llu-shop-hero.no-image::before { width:440px; height:440px; top:-270px; right:8%; border:1px solid rgba(255,255,255,.18); box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018); }
.tax-product_cat .llu-shop-hero.no-image::after { width:300px; height:300px; right:-80px; bottom:-205px; background:rgba(255,190,219,.12); }
.tax-product_cat .llu-shop-hero.no-image .llu-shop-hero__copy {
  width:min(1360px,calc(100% - 64px));
  min-height:430px;
  margin:0 auto;
  padding:clamp(70px,8vw,112px) clamp(0px,3vw,42px);
}
.tax-product_cat .llu-shop-hero.no-image .llu-shop-hero__copy::after { left:clamp(0px,3vw,42px); background:rgba(255,255,255,.65); }
.tax-product_cat .llu-shop-hero.no-image h1,
.tax-product_cat .llu-shop-hero.no-image .llu-kicker { color:#fff; }
.tax-product_cat .llu-shop-hero.no-image .llu-shop-hero__description { max-width:680px; color:rgba(255,255,255,.78); font-size:17px; }

.tax-product_cat .llu-subcategories {
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:-42px;
}
.tax-product_cat .llu-subcategory,
.tax-product_cat .llu-subcategory:nth-child(2n),
.tax-product_cat .llu-subcategory:nth-child(3n+2) {
  min-height:92px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 34px;
  gap:13px;
  align-items:center;
  padding:15px 18px;
  color:#34242b;
  background:rgba(255,250,252,.96);
  border:1px solid rgba(105,27,67,.14);
  border-radius:999px;
  box-shadow:0 16px 38px rgba(55,18,40,.13);
  backdrop-filter:blur(12px);
}
.tax-product_cat .llu-subcategory:hover { color:#651b42; background:#fff; border-color:rgba(126,31,76,.35); box-shadow:0 20px 46px rgba(55,18,40,.2); }
.tax-product_cat .llu-subcategory__number,
.tax-product_cat .llu-subcategory__arrow { display:grid; place-items:center; width:38px; height:38px; border-radius:50%; }
.tax-product_cat .llu-subcategory__number { color:#fff; background:linear-gradient(135deg,#671a41,#a72a63 58%,#522569); font-size:10px; font-weight:750; letter-spacing:.08em; }
.tax-product_cat .llu-subcategory__arrow { color:#74204a; background:#f4e6ed; font-size:17px; }
.tax-product_cat .llu-subcategory strong { color:#34242b; font-size:17px; line-height:1.12; }
.tax-product_cat .llu-subcategory small { color:#887279; }
.tax-product_cat .llu-subcategory__image { display:none; }

@media (max-width:900px) {
  .tax-product_cat .llu-shop-hero.no-image,
  .tax-product_cat .llu-shop-hero.no-image .llu-shop-hero__copy { min-height:360px; }
  .tax-product_cat .llu-shop-hero.no-image .llu-shop-hero__copy { width:min(100% - 36px,680px); padding-inline:0; }
  .tax-product_cat .llu-subcategories { grid-template-columns:repeat(2,minmax(0,1fr)); width:min(100% - 30px,700px); }
}
@media (max-width:560px) {
  .tax-product_cat .llu-subcategories { grid-template-columns:1fr; margin-top:-26px; }
  .tax-product_cat .llu-subcategory { min-height:78px; }
}

/* Compact commerce frame — 1.5.4. Keep this at the true end of the cascade. */
body.admin-bar .llu-header,
.llu-header {
  position:sticky !important;
  top:0 !important;
  z-index:80;
  background:rgba(255,252,250,.96);
  box-shadow:0 1px 0 rgba(69,26,49,.1);
  backdrop-filter:blur(16px);
}
body.admin-bar .llu-header { top:32px !important; }
html { scroll-padding-top:150px; }

@media (min-width:981px) {
  .llu-header__inner {
    min-height:104px;
    grid-template-rows:62px 42px;
  }
  .llu-logo__image { width:clamp(215px,18vw,260px); }
}

.single-product div.product {
  grid-template-columns:minmax(0,1.03fr) minmax(400px,.82fr);
  gap:clamp(32px,5vw,72px);
  align-items:stretch;
  margin-top:40px;
}
.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary {
  min-height:600px;
  height:auto;
}
.single-product div.product .woocommerce-product-gallery {
  padding:clamp(28px,3vw,44px);
}
.single-product .woocommerce-product-gallery__wrapper {
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
}
.single-product .woocommerce-product-gallery__image {
  width:min(100%,520px);
  min-height:0;
  height:auto;
  aspect-ratio:1 / 1;
  display:grid;
  place-items:center;
}
.single-product .woocommerce-product-gallery__image img {
  width:100%;
  height:100%;
  max-height:500px;
  object-fit:contain;
  padding:clamp(18px,2.5vw,34px);
}
.single-product div.product .summary {
  min-width:0;
  justify-content:flex-start;
  padding:clamp(36px,4vw,52px);
}
.single-product div.product .product_title {
  max-width:100%;
  font-size:clamp(34px,3.45vw,50px);
  line-height:1.02;
}
.single-product .woocommerce-product-details__short-description,
.single-product .llu-product-intro {
  max-width:56ch;
  font-size:15px;
  line-height:1.72;
}
.single-product .llu-purchase-assurance { margin-top:auto; }

@media (max-width:900px) {
  body.admin-bar .llu-header { top:46px !important; }
  .single-product div.product { grid-template-columns:1fr; gap:20px; }
  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary { min-height:0; height:auto; }
  .single-product div.product .summary { padding:32px 24px; }
  .single-product .woocommerce-product-gallery__image { width:100%; }
}

/* Signature purple footer, calmer transition and image-led collection cards — 1.5.7. */
.llu-section--tint + .llu-editorial {
  margin-top:clamp(34px,4vw,64px);
}
.llu-category-card__art {
  opacity:1;
  background-image:
    radial-gradient(circle at 76% 18%,rgba(255,255,255,.2),transparent 30%),
    linear-gradient(180deg,rgba(35,8,27,.16) 8%,rgba(55,12,42,.76) 100%),
    var(--llu-category-image,var(--llu-gradient-primary));
  background-position:center;
  background-repeat:no-repeat;
  background-size:auto,auto,cover;
  filter:saturate(.82) contrast(1.04);
}
.llu-category-card::before {
  z-index:1;
  background:linear-gradient(180deg,rgba(32,8,24,.06) 20%,rgba(39,8,29,.88) 100%);
}
.llu-category-card__copy { z-index:2; }
.llu-footer {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 10%,rgba(213,53,126,.2),transparent 30%),
    radial-gradient(circle at 88% 115%,rgba(138,72,184,.28),transparent 38%),
    linear-gradient(122deg,#291225 0%,#55183f 38%,#76265f 66%,#48215f 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1);
}
.llu-footer::before {
  content:'';
  position:absolute;
  z-index:-1;
  width:420px;
  height:420px;
  top:-310px;
  right:7%;
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;
  box-shadow:0 0 0 72px rgba(255,255,255,.018),0 0 0 144px rgba(255,255,255,.012);
  pointer-events:none;
}
.llu-footer,
.llu-footer p,
.llu-footer a { color:rgba(255,255,255,.84); }
.llu-footer a:hover,
.llu-footer a:focus-visible { color:#fff; }


/* Commerce width and block-layout recovery — 1.5.8 */
body.woocommerce-cart main.llu-commerce-page,
body.woocommerce-checkout main.llu-commerce-page,
body.woocommerce-account main.llu-commerce-page {
  overflow: visible;
}
body.woocommerce-cart .llu-commerce-content,
body.woocommerce-checkout .llu-commerce-content,
body.woocommerce-account .llu-commerce-content {
  width: min(1360px, calc(100% - 64px));
  max-width: none;
  margin: 38px auto 110px;
  padding: 0;
}
body.woocommerce-cart .llu-page-header,
body.woocommerce-checkout .llu-page-header,
body.woocommerce-account .llu-page-header {
  width: min(1360px, calc(100% - 64px));
  margin: 38px auto 0;
}
body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-cart .wc-block-cart,
body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.woocommerce-checkout .wc-block-checkout {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}
body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-checkout .wc-block-checkout__main,
body.woocommerce-checkout .wc-block-checkout__sidebar {
  width: auto;
  max-width: none;
  min-width: 0;
  margin: 0;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__description,
body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
  min-width: 0;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__image {
  width: 72px;
  min-width: 72px;
}
body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-name {
  max-width: none;
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
  line-height: 1.35;
}
body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-metadata__description {
  display: none;
}
body.woocommerce-cart .llu-recommendations,
body.woocommerce-checkout .llu-recommendations {
  width: 100%;
  max-width: 1360px;
  margin-inline: auto;
}
body.woocommerce-cart .llu-recommendations ul.products,
body.woocommerce-checkout .llu-recommendations ul.products {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 42px 20px !important;
  margin: 0 !important;
}
body.woocommerce-cart .llu-recommendations ul.products li.product,
body.woocommerce-checkout .llu-recommendations ul.products li.product {
  float: none !important;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
}

@media (min-width: 981px) {
  body.woocommerce-checkout .wc-block-checkout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(380px, .85fr);
    gap: clamp(30px, 4vw, 58px);
    align-items: start;
  }
  body.woocommerce-cart .wc-block-cart {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(350px, .75fr);
    gap: clamp(30px, 4vw, 58px);
    align-items: start;
  }
}

@media (max-width: 980px) {
  body.woocommerce-cart .llu-commerce-content,
  body.woocommerce-checkout .llu-commerce-content,
  body.woocommerce-account .llu-commerce-content,
  body.woocommerce-cart .llu-page-header,
  body.woocommerce-checkout .llu-page-header,
  body.woocommerce-account .llu-page-header {
    width: min(100% - 32px, 1360px);
  }
  body.woocommerce-cart .wc-block-cart,
  body.woocommerce-checkout .wc-block-checkout {
    display: block;
  }
  body.woocommerce-cart .llu-recommendations ul.products,
  body.woocommerce-checkout .llu-recommendations ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 32px 12px !important;
  }
}

@media (max-width: 560px) {
  body.woocommerce-cart .llu-commerce-content,
  body.woocommerce-checkout .llu-commerce-content,
  body.woocommerce-account .llu-commerce-content,
  body.woocommerce-cart .llu-page-header,
  body.woocommerce-checkout .llu-page-header,
  body.woocommerce-account .llu-page-header {
    width: min(100% - 20px, 1360px);
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__image {
    width: 58px;
    min-width: 58px;
  }
}

/* LLUSA_COMMERCE_POLISH_159
   Cart/checkout column separation and centred, boxed recommendation cards. */
@media (min-width: 901px) {
  body.woocommerce-cart .wc-block-cart,
  body.woocommerce-checkout .wc-block-checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 360px) !important;
    column-gap: clamp(24px, 2.4vw, 36px) !important;
    row-gap: 0 !important;
    align-items: start !important;
  }

  body.woocommerce-cart .wc-block-cart__main,
  body.woocommerce-checkout .wc-block-checkout__main,
  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-cart .wc-block-components-sidebar,
  body.woocommerce-checkout .wc-block-checkout__sidebar,
  body.woocommerce-checkout .wc-block-components-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
}

body.woocommerce-cart .llu-recommendations,
body.woocommerce-checkout .llu-recommendations {
  width: min(1180px, calc(100% - 40px));
  margin: 72px auto 96px;
  padding-top: 54px;
  text-align: center;
}

body.woocommerce-cart .llu-recommendations__head,
body.woocommerce-checkout .llu-recommendations__head {
  margin: 0 auto 34px;
}

body.woocommerce-cart .llu-recommendations ul.products,
body.woocommerce-checkout .llu-recommendations ul.products {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(230px, 270px)) !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 30px 24px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
  text-align: left;
}

body.woocommerce-cart .llu-recommendations ul.products li.product,
body.woocommerce-checkout .llu-recommendations ul.products li.product {
  width: 100% !important;
  max-width: 270px !important;
  min-width: 0 !important;
  height: 100%;
  margin: 0 !important;
  padding: 16px 16px 20px !important;
  overflow: hidden;
  list-style: none !important;
  border: 1px solid rgba(74, 25, 52, .11);
  border-radius: 24px;
  background: linear-gradient(145deg, #fff 0%, #fff9fb 100%);
  box-shadow: 0 16px 38px rgba(69, 22, 48, .10);
}

body.woocommerce-cart .llu-recommendations ul.products li.product::marker,
body.woocommerce-checkout .llu-recommendations ul.products li.product::marker {
  content: '';
}

body.woocommerce-cart .llu-recommendations ul.products li.product > a,
body.woocommerce-checkout .llu-recommendations ul.products li.product > a,
body.woocommerce-cart .llu-recommendations .woocommerce-LoopProduct-link,
body.woocommerce-checkout .llu-recommendations .woocommerce-LoopProduct-link {
  text-decoration: none !important;
}

body.woocommerce-cart .llu-recommendations ul.products li.product a img,
body.woocommerce-checkout .llu-recommendations ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 1 / 1.10;
  margin: 0 0 18px !important;
  padding: 18px !important;
  object-fit: contain;
  border-radius: 18px !important;
  background: linear-gradient(145deg, #fff 0%, #f7e9ef 100%) !important;
  transform: none !important;
}

body.woocommerce-cart .llu-recommendations .woocommerce-loop-product__title,
body.woocommerce-checkout .llu-recommendations .woocommerce-loop-product__title {
  min-height: 44px;
  margin: 0 !important;
  overflow-wrap: anywhere;
  text-decoration: none !important;
}

body.woocommerce-cart .llu-recommendations .price,
body.woocommerce-checkout .llu-recommendations .price {
  margin-top: 10px !important;
}

@media (max-width: 900px) {
  body.woocommerce-cart .wc-block-cart,
  body.woocommerce-checkout .wc-block-checkout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
}

@media (max-width: 700px) {
  body.woocommerce-cart .llu-recommendations,
  body.woocommerce-checkout .llu-recommendations {
    width: min(100% - 24px, 1180px);
    margin-block: 58px 78px;
    padding-top: 42px;
  }

  body.woocommerce-cart .llu-recommendations ul.products,
  body.woocommerce-checkout .llu-recommendations ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px 12px !important;
  }

  body.woocommerce-cart .llu-recommendations ul.products li.product,
  body.woocommerce-checkout .llu-recommendations ul.products li.product {
    max-width: none !important;
    padding: 12px 12px 16px !important;
    border-radius: 18px;
  }

  body.woocommerce-cart .llu-recommendations ul.products li.product a img,
  body.woocommerce-checkout .llu-recommendations ul.products li.product a img {
    padding: 12px !important;
    border-radius: 14px !important;
  }
}

/* LLUSA_COMMERCE_PRODUCT_RECOVERY_160
   Final cart/checkout separation, centred recommendation cards and multi-image gallery. */
@media (min-width: 981px) {
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wc-block-cart,
  body.woocommerce-checkout .wp-block-woocommerce-checkout,
  body.woocommerce-checkout .wc-block-checkout {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 380px) !important;
    gap: 34px !important;
    align-items: start !important;
  }

  body.woocommerce-cart .wp-block-woocommerce-cart-items-block,
  body.woocommerce-cart .wc-block-cart__main,
  body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block,
  body.woocommerce-checkout .wc-block-checkout__main {
    grid-column: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .wp-block-woocommerce-cart-totals-block,
  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-cart .wc-block-components-sidebar,
  body.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block,
  body.woocommerce-checkout .wc-block-checkout__sidebar,
  body.woocommerce-checkout .wc-block-components-sidebar {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding-left: 0 !important;
    box-sizing: border-box !important;
  }
}

body.woocommerce-cart .llu-block-recommendation-host,
body.woocommerce-checkout .llu-block-recommendation-host {
  width: 100%;
}

body.woocommerce-cart .llu-recommendations,
body.woocommerce-checkout .llu-recommendations {
  width: min(1180px, calc(100% - 40px)) !important;
  margin: 72px auto 100px !important;
  padding-top: 54px !important;
  text-align: center;
}

body.woocommerce-cart .llu-recommendations__head,
body.woocommerce-checkout .llu-recommendations__head {
  max-width: 720px;
  margin: 0 auto 36px !important;
}

body.woocommerce-cart .llu-recommendations ul.products,
body.woocommerce-checkout .llu-recommendations ul.products {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 26px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
  text-align: left;
}

body.woocommerce-cart .llu-recommendations ul.products li.product,
body.woocommerce-checkout .llu-recommendations ul.products li.product {
  float: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100%;
  margin: 0 !important;
  padding: 16px 16px 20px !important;
  overflow: hidden;
  list-style: none !important;
  border: 1px solid rgba(74,25,52,.12) !important;
  border-radius: 24px !important;
  background: linear-gradient(145deg,#fff 0%,#fff8fb 100%) !important;
  box-shadow: 0 16px 38px rgba(69,22,48,.11) !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart .llu-recommendations ul.products li.product::marker,
body.woocommerce-checkout .llu-recommendations ul.products li.product::marker { content: ''; }

body.woocommerce-cart .llu-recommendations ul.products li.product a img,
body.woocommerce-checkout .llu-recommendations ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 1 / 1.08;
  margin: 0 0 18px !important;
  padding: 18px !important;
  object-fit: contain !important;
  border-radius: 18px !important;
  background: linear-gradient(145deg,#fff 0%,#f7e8ef 100%) !important;
  transform: none !important;
}

body.woocommerce-cart .llu-recommendations .woocommerce-loop-product__title,
body.woocommerce-checkout .llu-recommendations .woocommerce-loop-product__title {
  min-height: 46px;
  margin: 0 !important;
  overflow-wrap: anywhere;
  text-decoration: none !important;
}

.single-product div.product .woocommerce-product-gallery {
  display: block !important;
}
.single-product .woocommerce-product-gallery__wrapper {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}
.single-product .woocommerce-product-gallery .flex-viewport {
  overflow: hidden;
  border-radius: 26px;
  background: #fff;
}
.single-product .woocommerce-product-gallery__image {
  width: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1;
}
.single-product .flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 10px;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.single-product .flex-control-thumbs li {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}
.single-product .flex-control-thumbs img {
  width: 100% !important;
  aspect-ratio: 1 / 1;
  padding: 8px;
  object-fit: contain;
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 12px;
  background: rgba(255,255,255,.94);
  opacity: .72;
}
.single-product .flex-control-thumbs img.flex-active,
.single-product .flex-control-thumbs img:hover { opacity: 1; }

@media (max-width: 980px) {
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wc-block-cart,
  body.woocommerce-checkout .wp-block-woocommerce-checkout,
  body.woocommerce-checkout .wc-block-checkout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }
  body.woocommerce-cart .wp-block-woocommerce-cart-items-block,
  body.woocommerce-cart .wp-block-woocommerce-cart-totals-block,
  body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block,
  body.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block,
  body.woocommerce-cart .wc-block-cart__main,
  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-checkout .wc-block-checkout__main,
  body.woocommerce-checkout .wc-block-checkout__sidebar {
    grid-column: 1 !important;
    width: 100% !important;
    margin: 0 !important;
  }
  body.woocommerce-cart .llu-recommendations ul.products,
  body.woocommerce-checkout .llu-recommendations ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 14px !important;
  }
}

@media (max-width: 560px) {
  body.woocommerce-cart .llu-recommendations,
  body.woocommerce-checkout .llu-recommendations {
    width: min(100% - 24px, 1180px) !important;
    margin-block: 58px 78px !important;
  }
  body.woocommerce-cart .llu-recommendations ul.products li.product,
  body.woocommerce-checkout .llu-recommendations ul.products li.product {
    padding: 12px 12px 16px !important;
    border-radius: 18px !important;
  }
  body.woocommerce-cart .llu-recommendations ul.products li.product a img,
  body.woocommerce-checkout .llu-recommendations ul.products li.product a img {
    padding: 12px !important;
    border-radius: 14px !important;
  }
  .single-product .flex-control-thumbs { grid-template-columns: repeat(3,minmax(0,1fr)); }
}


/* LLUSA_VISUAL_FLOW_161
   Final product-flow spacing and one-row commerce recommendations. */
.single-product div.product {
  row-gap: 0 !important;
}
.single-product div.product .woocommerce-tabs {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin: 44px 0 0 !important;
  padding: 0 !important;
}
.single-product div.product .woocommerce-tabs .panel {
  margin: 0 !important;
}
.single-product div.product .llu-product-details {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin: 26px 0 0 !important;
}
.single-product div.product .llu-recommendations {
  grid-column: 1 / -1 !important;
  margin-top: 62px !important;
  padding-top: 46px !important;
}

body.woocommerce-cart .llu-block-recommendation-host,
body.woocommerce-checkout .llu-block-recommendation-host {
  width: 100% !important;
  display: block !important;
}
body.woocommerce-cart .llu-recommendations,
body.woocommerce-checkout .llu-recommendations {
  width: min(1220px, calc(100% - 48px)) !important;
  max-width: 1220px !important;
  margin: 64px auto 86px !important;
  padding-top: 46px !important;
}
body.woocommerce-cart .llu-recommendations ul.products,
body.woocommerce-checkout .llu-recommendations ul.products,
.single-product .llu-recommendations ul.products {
  width: 100% !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  justify-content: stretch !important;
  align-items: stretch !important;
  gap: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.woocommerce-cart .llu-recommendations ul.products li.product,
body.woocommerce-checkout .llu-recommendations ul.products li.product,
.single-product .llu-recommendations ul.products li.product {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
}

@media (max-width: 980px) {
  body.woocommerce-cart .llu-recommendations ul.products,
  body.woocommerce-checkout .llu-recommendations ul.products,
  .single-product .llu-recommendations ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 14px !important;
  }
  .single-product div.product .woocommerce-tabs { margin-top: 30px !important; }
  .single-product div.product .llu-product-details { margin-top: 20px !important; }
}

@media (max-width: 560px) {
  body.woocommerce-cart .llu-recommendations,
  body.woocommerce-checkout .llu-recommendations {
    width: min(100% - 24px, 1220px) !important;
  }
}

/* LLUSA_CLASSIC_COMMERCE_162
   Deterministic classic cart and checkout layout, replacing fragile block flow. */
body.woocommerce-cart .llu-commerce-content,
body.woocommerce-checkout .llu-commerce-content {
  width: min(1220px, calc(100% - 48px)) !important;
  max-width: 1220px !important;
  margin: 40px auto 100px !important;
  padding: 0 !important;
}
body.woocommerce-cart .llu-commerce-content > .woocommerce,
body.woocommerce-checkout .llu-commerce-content > .woocommerce {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

@media (min-width: 981px) {
  body.woocommerce-cart .llu-commerce-content > .woocommerce {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 380px) !important;
    column-gap: 38px !important;
    row-gap: 0 !important;
    align-items: start !important;
  }
  body.woocommerce-cart .woocommerce-notices-wrapper,
  body.woocommerce-cart .woocommerce-message,
  body.woocommerce-cart .woocommerce-info,
  body.woocommerce-cart .woocommerce-error {
    grid-column: 1 / -1 !important;
  }
  body.woocommerce-cart .woocommerce-cart-form {
    grid-column: 1 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 30px !important;
    border: 1px solid rgba(70, 26, 49, .10) !important;
    border-radius: 26px !important;
    background: #fff !important;
    box-shadow: 0 16px 42px rgba(62, 22, 45, .08) !important;
    box-sizing: border-box !important;
  }
  body.woocommerce-cart .cart-collaterals {
    grid-column: 2 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.woocommerce-cart .cart-collaterals .cart_totals {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 30px !important;
    border-radius: 26px !important;
    background: linear-gradient(145deg, #fbedf4 0%, #eadcf5 100%) !important;
    box-shadow: 0 16px 42px rgba(62, 22, 45, .10) !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout form.checkout {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 380px) !important;
    grid-template-rows: auto 1fr !important;
    column-gap: 38px !important;
    row-gap: 0 !important;
    align-items: start !important;
  }
  body.woocommerce-checkout .woocommerce-NoticeGroup-checkout,
  body.woocommerce-checkout .woocommerce-notices-wrapper,
  body.woocommerce-checkout form.checkout > .woocommerce-error,
  body.woocommerce-checkout form.checkout > .woocommerce-info {
    grid-column: 1 / -1 !important;
  }
  body.woocommerce-checkout #customer_details {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 30px !important;
    border: 1px solid rgba(70, 26, 49, .10) !important;
    border-radius: 26px !important;
    background: #fff !important;
    box-shadow: 0 16px 42px rgba(62, 22, 45, .08) !important;
    box-sizing: border-box !important;
  }
  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2 {
    float: none !important;
    width: 100% !important;
  }
  body.woocommerce-checkout #order_review_heading {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 30px 30px 12px !important;
    border-radius: 26px 26px 0 0 !important;
    background: linear-gradient(145deg, #fbedf4 0%, #eadcf5 100%) !important;
    box-sizing: border-box !important;
  }
  body.woocommerce-checkout #order_review {
    grid-column: 2 !important;
    grid-row: 2 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 30px 30px !important;
    border-radius: 0 0 26px 26px !important;
    background: linear-gradient(145deg, #fbedf4 0%, #eadcf5 100%) !important;
    box-shadow: 0 16px 42px rgba(62, 22, 45, .10) !important;
    box-sizing: border-box !important;
  }
}

body.woocommerce-cart table.shop_table,
body.woocommerce-checkout table.shop_table {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
body.woocommerce-cart table.shop_table th,
body.woocommerce-cart table.shop_table td,
body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td {
  padding: 15px 12px !important;
  border-color: rgba(55, 27, 40, .10) !important;
}
body.woocommerce-cart .product-thumbnail img {
  width: 74px !important;
  height: 74px !important;
  object-fit: contain !important;
}
body.woocommerce-cart .cart_totals h2,
body.woocommerce-checkout #order_review_heading {
  font-family: var(--llu-serif) !important;
  font-size: 26px !important;
  font-weight: 400 !important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  width: 100% !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart .llu-recommendations,
body.woocommerce-checkout .llu-recommendations {
  width: min(1220px, calc(100% - 48px)) !important;
  max-width: 1220px !important;
  margin: 68px auto 92px !important;
  padding-top: 48px !important;
  border-top: 1px solid var(--llu-line) !important;
  text-align: center !important;
}
body.woocommerce-cart .llu-recommendations ul.products,
body.woocommerce-checkout .llu-recommendations ul.products {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.woocommerce-cart .llu-recommendations ul.products li.product,
body.woocommerce-checkout .llu-recommendations ul.products li.product {
  float: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 16px 16px 20px !important;
  border: 1px solid rgba(70, 26, 49, .10) !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 14px 34px rgba(62, 22, 45, .09) !important;
  box-sizing: border-box !important;
}

@media (max-width: 980px) {
  body.woocommerce-cart .llu-commerce-content,
  body.woocommerce-checkout .llu-commerce-content,
  body.woocommerce-cart .llu-recommendations,
  body.woocommerce-checkout .llu-recommendations {
    width: min(100% - 28px, 1220px) !important;
  }
  body.woocommerce-cart .llu-commerce-content > .woocommerce,
  body.woocommerce-checkout form.checkout {
    display: block !important;
  }
  body.woocommerce-cart .woocommerce-cart-form,
  body.woocommerce-cart .cart-collaterals,
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review {
    width: 100% !important;
    margin: 0 0 22px !important;
  }
  body.woocommerce-checkout #order_review_heading {
    margin-bottom: 0 !important;
    padding-bottom: 12px !important;
    border-radius: 24px 24px 0 0 !important;
  }
  body.woocommerce-checkout #order_review {
    border-radius: 0 0 24px 24px !important;
  }
  body.woocommerce-cart .llu-recommendations ul.products,
  body.woocommerce-checkout .llu-recommendations ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px 12px !important;
  }
}

/* LLUSA_CLASSIC_COMMERCE_FINISH_163
   Ensure cart recommendations span beneath both commerce boxes. */
@media (min-width: 981px) {
  body.woocommerce-cart .llu-commerce-content > .woocommerce > .llu-recommendations,
  body.woocommerce-cart .llu-commerce-content > .woocommerce > .llu-block-recommendation-host,
  body.woocommerce-cart .llu-commerce-content > .woocommerce > .cross-sells {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 68px 0 0 !important;
  }
}
body.woocommerce-checkout form.checkout + .llu-recommendations,
body.woocommerce-checkout .woocommerce > .llu-recommendations {
  clear: both !important;
  display: block !important;
}

/* LLUSA Collection Card Typography Repair v1.5.8 */
.post-type-archive-product .llu-subcategories {
  align-items:stretch;
}
.post-type-archive-product .llu-subcategory {
  min-height:118px;
  grid-template-columns:42px minmax(0,1fr) 28px;
  grid-template-rows:1fr;
  column-gap:12px;
  align-items:center;
  padding:18px 16px;
  box-sizing:border-box;
}
.post-type-archive-product .llu-subcategory__number {
  align-self:start;
  padding-top:2px;
  font-family:var(--llu-sans);
  font-size:12px;
  line-height:1;
  font-weight:600;
  letter-spacing:.02em;
  white-space:nowrap;
}
.post-type-archive-product .llu-subcategory > span:nth-child(2) {
  min-width:0;
  padding:0;
  align-self:center;
}
.post-type-archive-product .llu-subcategory strong {
  display:block;
  margin:0;
  max-width:100%;
  font-family:var(--llu-serif);
  font-size:clamp(15px,1.08vw,18px);
  font-weight:400;
  line-height:1.14;
  letter-spacing:-.012em;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.post-type-archive-product .llu-subcategory small {
  display:block;
  margin-top:7px;
  font-size:9px;
  line-height:1.25;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.post-type-archive-product .llu-subcategory__arrow {
  align-self:end;
  justify-self:end;
  padding:0;
  font-size:15px;
  line-height:1;
}
@media (max-width:1100px) {
  .post-type-archive-product .llu-subcategories { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .post-type-archive-product .llu-subcategory strong { font-size:17px; }
}
@media (max-width:620px) {
  .post-type-archive-product .llu-subcategories { width:min(100% - 28px,1360px); grid-template-columns:1fr; }
  .post-type-archive-product .llu-subcategory { min-height:104px; grid-template-columns:36px minmax(0,1fr) 24px; padding:15px 14px; }
  .post-type-archive-product .llu-subcategory strong { font-size:16px; }
}

/* LLUSA Collection Card Hard Override v1.5.9 */
.llu-subcategories {
  align-items:stretch !important;
}
.llu-subcategories > .llu-subcategory {
  position:relative !important;
  display:block !important;
  min-height:118px !important;
  padding:18px 18px 18px 64px !important;
  box-sizing:border-box !important;
  text-align:left !important;
}
.llu-subcategories > .llu-subcategory .llu-subcategory__number {
  position:absolute !important;
  left:16px !important;
  top:18px !important;
  width:auto !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  background:none !important;
  border-radius:0 !important;
  color:#fff !important;
  font-family:var(--llu-sans) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:600 !important;
  letter-spacing:.02em !important;
}
.llu-subcategories > .llu-subcategory > span:nth-child(2) {
  display:block !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
}
.llu-subcategories > .llu-subcategory strong {
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-family:var(--llu-serif) !important;
  font-size:17px !important;
  font-weight:400 !important;
  line-height:1.12 !important;
  letter-spacing:-.01em !important;
  text-align:left !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}
.llu-subcategories > .llu-subcategory small {
  display:block !important;
  margin:7px 0 0 !important;
  padding:0 !important;
  color:rgba(255,255,255,.76) !important;
  font-size:9px !important;
  line-height:1.2 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  text-align:left !important;
}
.llu-subcategories > .llu-subcategory .llu-subcategory__arrow {
  position:absolute !important;
  left:16px !important;
  bottom:17px !important;
  width:auto !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  background:none !important;
  border-radius:0 !important;
  color:#fff !important;
  font-size:15px !important;
  line-height:1 !important;
}
@media (max-width:1100px) {
  .llu-subcategories { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:620px) {
  .llu-subcategories { grid-template-columns:1fr !important; width:min(100% - 28px,1360px) !important; }
  .llu-subcategories > .llu-subcategory { min-height:106px !important; padding:16px 16px 16px 58px !important; }
  .llu-subcategories > .llu-subcategory .llu-subcategory__number { left:14px !important; top:16px !important; }
  .llu-subcategories > .llu-subcategory .llu-subcategory__arrow { left:14px !important; bottom:15px !important; }
  .llu-subcategories > .llu-subcategory strong { font-size:16px !important; }
}


/* Red Frog mobile navigation + viewport containment fix v1 — 2026-08-24 */
@media (max-width: 980px) {
  .llu-header__inner {
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
  .llu-menu-toggle { display: inline-flex; }
  .llu-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    box-sizing: border-box;
    overflow-x: clip;
    overflow-y: auto;
  }
  .llu-nav.is-open { display: block; }
  .llu-primary-list,
  .llu-mega,
  .llu-mega__panel,
  .llu-mega__inner {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
  .llu-primary-list { margin-left: 0; margin-right: 0; }
  .llu-mega__panel { margin-left: 0; margin-right: 0; overflow-x: clip; }
  .llu-actions { min-width: 0; max-width: 100%; }
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  .llu-products-grid,
  .llu-product-card,
  square-placement {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  square-placement { overflow: hidden; }
}
@media (max-width: 600px) {
  .llu-header__inner { gap: 8px; }
  .llu-logo, .llu-logo img { max-width: min(46vw, 170px); }
  .llu-actions { gap: 8px; }
}
html, body { max-width: 100%; overflow-x: clip; }


/* Red Frog LLUSA mobile drawer geometry repair v2 — 2026-08-24 */
@media (max-width:980px){
 .llu-header__inner{position:relative!important;}
 .llu-nav{
  display:none!important;
  grid-column:1 / -1!important;
  grid-row:auto!important;
  justify-self:stretch!important;
  align-self:auto!important;
  position:absolute!important;
  top:100%!important;
  left:50%!important;
  right:auto!important;
  width:100vw!important;
  width:100dvw!important;
  max-width:100vw!important;
  max-width:100dvw!important;
  min-width:0!important;
  margin:0!important;
  padding:24px max(20px,env(safe-area-inset-right)) 30px max(20px,env(safe-area-inset-left))!important;
  transform:translateX(-50%)!important;
  box-sizing:border-box!important;
  background:var(--llu-paper)!important;
  border-bottom:1px solid var(--llu-line)!important;
  box-shadow:0 24px 48px rgba(32,22,25,.14)!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  max-height:calc(100dvh - 120px)!important;
  overscroll-behavior:contain;
  z-index:120!important;
 }
 .llu-nav.is-open{display:block!important;}
 .llu-nav>ul,.llu-primary-list{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;}
 .llu-nav>ul>li,.llu-primary-list>li{width:100%!important;max-width:none!important;}
 .llu-mega__trigger{width:100%!important;}
 .llu-mega__panel{position:static!important;width:100%!important;max-width:100%!important;margin:8px 0 -8px!important;padding:18px 0 12px!important;transform:none!important;box-shadow:none!important;}
 .llu-mega__inner{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;}
}


/* LLUSA category subcategory fill #74224b — 2026-08-24 */
.tax-product_cat .llu-subcategory{
  background:#74224b!important;
  border-color:#74224b!important;
  color:#fff!important;
}
.tax-product_cat .llu-subcategory :is(strong,small,.llu-subcategory__number,.llu-subcategory__arrow){
  color:#fff!important;
}
.tax-product_cat .llu-subcategory:hover,
.tax-product_cat .llu-subcategory:focus-visible{
  background:#74224b!important;
  border-color:#74224b!important;
  color:#fff!important;
}

/* LoveVibz USA Luxury Edition v1.0.0 */
:root{--llu-ink:#171315;--llu-plum:#171315;--llu-wine:#b40032;--llu-rose:#c00036;--llu-blush:#ece5e1;--llu-cream:#f5f0e9;--llu-paper:#fffdfa;--llu-gold:#b99a67;--llu-muted:#74696c;--llu-gradient-primary:linear-gradient(120deg,#171315 0%,#3a171f 45%,#b40032 100%);--llu-gradient-violet:linear-gradient(135deg,#141113 0%,#302327 55%,#8e1734 100%);--llu-gradient-sunset:linear-gradient(135deg,#2a141a 0%,#7a1830 52%,#c00036 100%);--llu-gradient-blush:linear-gradient(145deg,#fffdfa 0%,#f3ece7 58%,#e3d6d0 100%)}
body{background:#f8f5f0;color:#171315}.llu-notice{background:#121012;color:#fff;letter-spacing:.18em}.llu-site-header{background:rgba(255,253,250,.97);border-bottom:1px solid rgba(23,19,21,.09)}.llu-nav a,.llu-icon-link{color:#231d20}.llu-nav a:hover,.llu-icon-link:hover{color:#b40032}.llu-logo__image{width:clamp(235px,22vw,330px)}.llu-hero{background:radial-gradient(circle at 80% 18%,rgba(180,0,50,.18),transparent 30%),linear-gradient(130deg,#f7f1eb 0%,#fffdfa 58%,#eee3dd 100%)}.llu-hero h1,.llu-section h2,.woocommerce div.product .product_title{color:#171315}.llu-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wp-element-button{background:linear-gradient(110deg,#171315 0%,#4b1724 48%,#b40032 100%)!important;border-color:transparent!important;color:#fff!important;border-radius:999px!important}.llu-button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:linear-gradient(110deg,#0c0a0b 0%,#331219 48%,#8d0028 100%)!important}.llu-category-card{background:#eee7e1!important;border-color:rgba(23,19,21,.08)!important}.llu-category-card:nth-child(2){background:#e4d9d3!important}.llu-category-card:nth-child(3){background:#d7cbc4!important}.llu-category-card:nth-child(4){background:linear-gradient(135deg,#121012,#32181f 58%,#7c1530)!important;color:#fff!important}.llu-mega__feature{background-color:#161214}.woocommerce ul.products li.product a img,.single-product .woocommerce-product-gallery__image{background:linear-gradient(145deg,#f6f1eb,#ece4dc)!important}.woocommerce ul.products li.product .price,.single-product div.product p.price{color:#9f002c!important}.llu-product-details{background:linear-gradient(135deg,#191416 0%,#2b1c21 55%,#541827 100%)!important;color:#fff!important}.llu-product-details h2,.llu-product-details dt,.llu-product-details dd,.llu-product-details p{color:#f9f4ef!important}.llu-footer{background:#100e0f!important;color:#f7f2ed!important}.llu-footer a{color:#efe7e1!important}.llu-footer a:hover{color:#d31548!important}.wc-block-cart,.wc-block-checkout__main{background:#fffdfa!important}.wc-block-checkout__sidebar{background:#eee6e0!important}@media(max-width:782px){html,body{max-width:100%;overflow-x:hidden}.llu-logo__image{width:min(48vw,185px)}.llu-site-header,.llu-header__inner{max-width:100%;overflow:visible}.single-product .woocommerce-product-gallery__image{min-height:0!important}}
