/*
 Theme Name:   Lione Child Theme
 Theme URI:    http://lione.axiomthemes.com
 Description:  Lione Child Theme
 Author:       AxiomThemes
 Author URI:   http://axiomthemes.com
 Template:     lione
 Version:      1.0
 Tags:         flexible-header, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, full-width-template, microformats, post-formats, theme-options, threaded-comments, translation-ready
 Text Domain:  lione
*/

/* ============================================================
   TOKENS
   ============================================================ */
:root {
  --color-bg: #f7f4ef;
  --color-title: #6f2c2f;
  --color-heading: #686968;
  --color-text: #000000;
  --color-accent: #c2a27c;
  --color-border: #e0dbd4;
  --color-border-strong: rgba(0, 0, 0, 0.16);
  --color-disabled-bg: #cfcfcf;
  --color-disabled-text: #efe2cc;

  --font-title: "Unbounded", sans-serif;
  --font-heading: "Space Mono", monospace;
  --font-text: "DM Serif Display", serif;
  --font-accent: "DM Serif Display", serif;

  --btn-height: 58px;
  --btn-padding-x: 34px;
  --btn-font-size: 10px;
  --btn-letter-spacing: 0.22em;
}

/* ============================================================
   TYPOGRAPHY
   ============================================================ */
body {
  font-family: var(--font-text) !important;
  font-weight: 300 !important;
}

h1 {
  font-family: var(--font-title) !important;
  font-weight: 500 !important;
}

h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-heading) !important;
  font-weight: 400 !important;
}

/* ============================================================
   GLOBAL BUTTON LANGUAGE
   keep this off Woo to avoid breaking commerce states
   ============================================================ */
.sc_button,
.theme_button,
.wp-block-button__link,
.elementor-button {
  border-radius: 0 !important;
  box-shadow: none !important;
  text-transform: uppercase !important;
}

/* ============================================================
   GLOBAL UI ICONS
   ============================================================ */
.trx_addons_scroll_to_top {
  color: var(--color-bg) !important;
}

/* ============================================================
   WOO BUTTON BASE
   only for standard Woo buttons, not product-card overlays
   ============================================================ */
.woocommerce a.wc-forward,
.woocommerce a.button:not(.add_to_cart_button):not(.ajax_add_to_cart):not(.product_type_simple):not(.product_type_variable):not(.product_type_grouped):not(.product_type_external),
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .checkout-button,
.woocommerce .button.alt,
.widget_shopping_cart_content .buttons .button,
.sc_layouts_cart_widget .buttons .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: var(--btn-height) !important;
  padding: 0 var(--btn-padding-x) !important;
  background: transparent !important;
  color: var(--color-text) !important;
  border: 1px solid var(--color-border-strong) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--font-heading) !important;
  font-size: var(--btn-font-size) !important;
  font-weight: 400 !important;
  letter-spacing: var(--btn-letter-spacing) !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}

.woocommerce a.wc-forward:hover,
.woocommerce a.button:not(.add_to_cart_button):not(.ajax_add_to_cart):not(.product_type_simple):not(.product_type_variable):not(.product_type_grouped):not(.product_type_external):hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .checkout-button:hover,
.woocommerce .button.alt:hover,
.widget_shopping_cart_content .buttons .button:hover,
.sc_layouts_cart_widget .buttons .button:hover {
  background: var(--color-title) !important;
  color: var(--color-bg) !important;
  border-color: var(--color-title) !important;
}

.woocommerce button.button:disabled,
.woocommerce button.button:disabled:hover,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled:hover,
.woocommerce button[name="update_cart"]:disabled,
.woocommerce button[name="update_cart"][disabled] {
  background: var(--color-disabled-bg) !important;
  color: var(--color-disabled-text) !important;
  border-color: var(--color-disabled-bg) !important;
  opacity: 1 !important;
  cursor: not-allowed !important;
}

/* ============================================================
   MINI CART BUTTON LAYOUT
   ============================================================ */
.widget_shopping_cart_content .buttons,
.sc_layouts_cart_widget .buttons {
  display: flex !important;
  gap: 16px !important;
}

.widget_shopping_cart_content .buttons .button,
.sc_layouts_cart_widget .buttons .button {
  flex: 1 1 auto !important;
}

/* ============================================================
   SHOP LOOP CTAS
   preserve the visual language inside product cards
   ============================================================ */
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product .ajax_add_to_cart,
.woocommerce-page ul.products li.product .add_to_cart_button,
.woocommerce-page ul.products li.product .ajax_add_to_cart {
  background: transparent !important;
  color: var(--color-bg) !important;
  border: 0 !important;
  box-shadow: none !important;
}

.woocommerce ul.products li.product .product_type_variable,
.woocommerce ul.products li.product .product_type_grouped,
.woocommerce ul.products li.product .product_type_external,
.woocommerce ul.products li.product .product_type_simple,
.woocommerce-page ul.products li.product .product_type_variable,
.woocommerce-page ul.products li.product .product_type_grouped,
.woocommerce-page ul.products li.product .product_type_external,
.woocommerce-page ul.products li.product .product_type_simple {
  background: transparent !important;
  color: var(--color-bg) !important;
  border: 0 !important;
  box-shadow: none !important;
}

.woocommerce ul.products li.product a.button.product_type_variable:after,
.woocommerce-page ul.products li.product a.button.product_type_variable:after {
  color: var(--color-bg) !important;
}

/* ============================================================
   HEADER CART / MINI CART ICON TEXT
   ============================================================ */
.sc_layouts_cart .sc_layouts_cart_items_short,
.sc_layouts_cart .sc_layouts_cart_items,
.sc_layouts_cart .sc_layouts_cart_totals,
.sc_layouts_cart .sc_layouts_cart_summa,
.sc_layouts_cart .sc_layouts_cart_badge,
.sc_layouts_cart_items,
.sc_layouts_cart_totals,
.sc_layouts_cart_summa,
.sc_layouts_cart_items_short {
  color: var(--color-bg) !important;
}

.sc_layouts_cart svg,
.sc_layouts_cart svg * {
  fill: var(--color-bg) !important;
  stroke: var(--color-bg) !important;
}

/* ============================================================
   SAFE EXTENSION AREA
   add future Woo page-specific tweaks below this line only
   ============================================================ */


/* ============================================================
   SIDEBAR — INDEX
   Înlocuiește integral blocul anterior de sidebar din style.css
   ============================================================ */

:root {
  --sb-rule: rgba(0, 0, 0, 0.12);
  --sb-rule-strong: #6f2c2f;
  --sb-muted: #8d8983;
}

/* ------------------------------------------------------------
   SHELL
   fără flex pe .sidebar_inner — tema îl colapsează pe mobil cu
   slideToggle, care pune display:none inline. Un display:flex
   !important aici blochează butonul Filters.
   ------------------------------------------------------------ */
.sidebar.widget_area .sidebar_inner {
  background: transparent !important;
  padding: 0 !important;
}

.sidebar.widget_area .widget {
  margin: 0 0 42px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.sidebar.widget_area .widget:last-child {
  margin-bottom: 0 !important;
}

/* ------------------------------------------------------------
   ETICHETE DE SECȚIUNE
   ------------------------------------------------------------ */
.sidebar.widget_area .widget > .widget_title {
  margin: 0 0 18px !important;
  padding: 0 0 10px !important;
  border-bottom: 1px solid var(--sb-rule-strong) !important;
  font-family: var(--font-heading) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.22em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  color: var(--sb-muted) !important;
}

/* ------------------------------------------------------------
   BULINE
   tema le desenează ca a::before, cercuri negre în afara coloanei
   ------------------------------------------------------------ */
.sidebar.widget_area .product-categories a:before,
.sidebar.widget_area .product-categories a:after,
.sidebar.widget_area .product-categories li:before,
.sidebar.widget_area .product-categories li:after {
  content: none !important;
  display: none !important;
}

/* ------------------------------------------------------------
   COȘ
   ------------------------------------------------------------ */
.sidebar.widget_area .widget_shopping_cart:has(.woocommerce-mini-cart__empty-message) {
  display: none !important;
}

.sidebar.widget_area .woocommerce-mini-cart {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.sidebar.widget_area .woocommerce-mini-cart .mini_cart_item {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 58px 1fr !important;
  column-gap: 16px !important;
  align-items: start !important;
  margin: 0 !important;
  padding: 0 26px 18px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--sb-rule) !important;
}

.sidebar.widget_area .woocommerce-mini-cart .mini_cart_item + .mini_cart_item {
  padding-top: 18px !important;
}

.sidebar.widget_area .woocommerce-mini-cart .mini_cart_item img {
  grid-row: 1 / span 2 !important;
  width: 58px !important;
  height: 72px !important;
  margin: 0 !important;
  object-fit: cover !important;
  border-radius: 0 !important;
  float: none !important;
}

.sidebar.widget_area .woocommerce-mini-cart .mini_cart_item > a:not(.remove) {
  display: contents !important;
  font-family: var(--font-text) !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  color: var(--color-text) !important;
  text-decoration: none !important;
}

.sidebar.widget_area .woocommerce-mini-cart .mini_cart_item .quantity {
  grid-column: 2 !important;
  display: block !important;
  margin-top: 7px !important;
  font-family: var(--font-heading) !important;
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  color: var(--sb-muted) !important;
}

.sidebar.widget_area .woocommerce-mini-cart .mini_cart_item .quantity .amount {
  font-size: 14px !important;
  color: var(--color-title) !important;
}

.sidebar.widget_area .woocommerce-mini-cart a.remove_from_cart_button {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 22px !important;
  height: 22px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
  line-height: 1 !important;
  color: var(--sb-muted) !important;
  opacity: 1 !important;
}

.sidebar.widget_area .woocommerce-mini-cart a.remove_from_cart_button:hover {
  background: transparent !important;
  color: var(--color-title) !important;
}

.sidebar.widget_area .woocommerce-mini-cart__total {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  font-family: var(--font-heading) !important;
  font-size: 12px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: var(--sb-muted) !important;
}

.sidebar.widget_area .woocommerce-mini-cart__total strong {
  font-weight: 400 !important;
}

.sidebar.widget_area .woocommerce-mini-cart__total .amount {
  font-family: var(--font-text) !important;
  font-size: 22px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: var(--color-title) !important;
}

.sidebar.widget_area .widget_shopping_cart_content .buttons {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin: 20px 0 0 !important;
}

/* Regula globală de buton are șase :not() în selector, deci e foarte
   specifică. O oglindim aici, prefixată cu .sidebar, ca să câștige. */
.sidebar .woocommerce a.button:not(.add_to_cart_button):not(.ajax_add_to_cart):not(.product_type_simple):not(.product_type_variable):not(.product_type_grouped):not(.product_type_external),
.sidebar .widget_shopping_cart_content .buttons a.button:not(.x) {
  width: 100% !important;
  min-height: 50px !important;
  height: auto !important;
  padding: 0 18px !important;
  font-size: 11px !important;
  letter-spacing: 0.2em !important;
}

/* Checkout rămâne conturat. Tema îl blochează cu
   `.woocommerce.widget_shopping_cart .buttons a.checkout { background: none !important }`
   și nu am reușit să-l umplu. Îl diferențiem prin poziție și literă. */
.sidebar .widget_shopping_cart_content .buttons a.button.checkout {
  order: -1 !important;
  letter-spacing: 0.28em !important;
}

/* ------------------------------------------------------------
   CĂUTARE
   lupa temei mutată în dreapta, cu zonă de click peste ea
   ------------------------------------------------------------ */
.sidebar.widget_area .widget_product_search .search_form {
  position: relative !important;
  display: block !important;
  border-bottom: 1px solid var(--sb-rule) !important;
}

.sidebar.widget_area .widget_product_search .search_form:focus-within {
  border-bottom-color: var(--sb-rule-strong) !important;
}

.sidebar.widget_area .widget_product_search .search_form:after {
  left: auto !important;
  right: 2px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  font-size: 15px !important;
  color: var(--sb-muted) !important;
}

.sidebar.widget_area .widget_product_search .search_field {
  width: 100% !important;
  height: 50px !important;
  padding: 0 34px 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--font-heading) !important;
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
  color: var(--color-text) !important;
}

.sidebar.widget_area .widget_product_search .search_field::placeholder {
  color: var(--sb-muted) !important;
  opacity: 1 !important;
}

.sidebar.widget_area .widget_product_search .search_button {
  position: absolute !important;
  left: auto !important;
  right: 0 !important;
  top: 0 !important;
  width: 34px !important;
  height: 50px !important;
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

/* ------------------------------------------------------------
   CATEGORII
   ------------------------------------------------------------ */
.sidebar.widget_area .product-categories,
.sidebar.widget_area .product-categories ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.sidebar.widget_area .product-categories > li.cat-item {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid var(--sb-rule) !important;
  list-style: none !important;
}

.sidebar.widget_area .product-categories > li.cat-item > a {
  flex: 0 1 auto !important;
  display: block !important;
  padding: 15px 0 !important;
  font-family: var(--font-text) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
  color: var(--color-text) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.sidebar.widget_area .product-categories > li.cat-item > a:hover,
.sidebar.widget_area .product-categories > li.current-cat > a {
  color: var(--color-title) !important;
}

.sidebar.widget_area .product-categories > li.cat-item > .count {
  flex: 0 0 auto !important;
  float: none !important;
  margin: 0 !important;
  font-family: var(--font-heading) !important;
  font-size: 12px !important;
  letter-spacing: 0.04em !important;
  color: var(--sb-muted) !important;
}

.sidebar.widget_area .product-categories .children {
  flex: 0 0 100% !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}

.sidebar.widget_area .product-categories .children li.cat-item {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  margin: 0 !important;
  padding: 0 0 0 18px !important;
  border: 0 !important;
  list-style: none !important;
}

.sidebar.widget_area .product-categories .children li.cat-item > a {
  padding: 6px 0 !important;
  font-family: var(--font-heading) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.5 !important;
  color: var(--color-heading) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.sidebar.widget_area .product-categories .children li.cat-item > a:hover,
.sidebar.widget_area .product-categories .children li.current-cat > a {
  color: var(--color-title) !important;
}

.sidebar.widget_area .product-categories .children li.cat-item > .count {
  float: none !important;
  margin: 0 !important;
  font-family: var(--font-heading) !important;
  font-size: 12px !important;
  color: var(--color-accent) !important;
}

/* ------------------------------------------------------------
   BARĂ DE PREȚ
   Bara sus pe toată lățimea, valorile dedesubt la cele două capete,
   butonul jos-stânga. „Price:" și „—" din markup sunt noduri de text
   pe care nu le pot selecta, deci sunt stinse cu font-size:0 pe
   container și reaprinse pe .from / .to.
   ------------------------------------------------------------ */
.sidebar.widget_area .widget_price_filter .price_slider_wrapper {
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
}

/* Bara e retrasă cu 10px de fiecare parte, ca mânerele — care ies
   10px în afara ei — să se alinieze cu marginile coloanei. */
.sidebar.widget_area .widget_price_filter .price_slider {
  order: 1 !important;
  height: 6px !important;
  margin: 10px 10px 0 !important;
  background: rgba(0, 0, 0, 0.10) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.sidebar.widget_area .widget_price_filter .ui-slider-range {
  height: 6px !important;
  background: var(--sb-rule-strong) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.sidebar.widget_area .widget_price_filter .ui-slider-handle {
  top: -7px !important;
  width: 20px !important;
  height: 20px !important;
  margin-left: -10px !important;
  box-sizing: border-box !important;
  background: var(--color-bg) !important;
  border: 2px solid var(--sb-rule-strong) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  cursor: ew-resize !important;
  transition: background-color 0.15s ease !important;
}

.sidebar.widget_area .widget_price_filter .ui-slider-handle:hover,
.sidebar.widget_area .widget_price_filter .ui-slider-handle:focus {
  background: var(--sb-rule-strong) !important;
  outline: none !important;
}

.sidebar.widget_area .widget_price_filter .price_slider_amount {
  order: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 16px !important;
  margin: 0 !important;
  text-align: left !important;
}

.sidebar.widget_area .widget_price_filter .price_label {
  order: 1 !important;
  display: flex !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  margin: 20px 0 0 !important;
  font-size: 0 !important;
}

.sidebar.widget_area .widget_price_filter .price_label .from {
  margin-right: auto !important;
}

.sidebar.widget_area .widget_price_filter .price_label .from,
.sidebar.widget_area .widget_price_filter .price_label .to {
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  color: var(--color-text) !important;
}

/* Etichetele care fac evident că sunt două capete de interval */
.sidebar.widget_area .widget_price_filter .price_label .from:before,
.sidebar.widget_area .widget_price_filter .price_label .to:before {
  display: block !important;
  margin-bottom: 4px !important;
  font-family: var(--font-heading) !important;
  font-size: 9px !important;
  letter-spacing: 0.2em !important;
  color: var(--sb-muted) !important;
}

.sidebar.widget_area .widget_price_filter .price_label .from:before {
  content: 'FROM' !important;
}

.sidebar.widget_area .widget_price_filter .price_label .to:before {
  content: 'TO' !important;
  text-align: right !important;
}

.sidebar .widget_price_filter form button.button:not(.x) {
  order: 2 !important;
  align-self: flex-start !important;
  width: auto !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 0 4px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--sb-rule-strong) !important;
  border-radius: 0 !important;
  font-family: var(--font-heading) !important;
  font-size: 11px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: var(--color-title) !important;
}

.sidebar .widget_price_filter form button.button:not(.x):hover {
  background: transparent !important;
  color: var(--color-text) !important;
  border-bottom-color: var(--color-text) !important;
}

.sidebar.widget_area .widget_price_filter .clear {
  display: none !important;
}

/* ------------------------------------------------------------
   BUTONUL FILTERS
   ------------------------------------------------------------ */
.sidebar.widget_area .sidebar_control {
  font-family: var(--font-heading) !important;
  font-size: 12px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
}

/* ------------------------------------------------------------
   MOBIL
   ------------------------------------------------------------ */
@media (max-width: 1023px) {
  .sidebar.widget_area .widget {
    margin-bottom: 36px !important;
  }

  .sidebar.widget_area .product-categories > li.cat-item > a {
    padding: 16px 0 !important;
    font-size: 26px !important;
  }

  .sidebar.widget_area .product-categories .children li.cat-item > a {
    padding: 8px 0 !important;
    font-size: 15px !important;
  }

  .sidebar.widget_area .widget_product_search .search_field,
  .sidebar.widget_area .widget_product_search .search_button {
    height: 54px !important;
  }

  .sidebar.widget_area .widget_product_search .search_field {
    font-size: 14px !important;
  }

  .sidebar .widget_shopping_cart_content .buttons a.button:not(.x) {
    min-height: 54px !important;
  }
}

/* ------------------------------------------------------------
   REZERVĂ pentru browsere fără :has()
   ------------------------------------------------------------ */
.sidebar.widget_area .woocommerce-mini-cart__empty-message {
  margin: 0 !important;
  font-family: var(--font-heading) !important;
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
  color: var(--sb-muted) !important;
}

/* ============================================================
   ADD TO CART — ICONIȚA DIN LISTĂRI
   Nu ține de sidebar, dar stă aici ca să ai un singur bloc.
   Textul „Add to Cart" e ascuns de temă cu font-size:0; ce se vede
   e iconița fontello din ::before, iar regulile de culoare pe
   ancoră nu o ating. Scop: doar listări, nu pagina de produs.
   ============================================================ */
body.woocommerce-page:not(.single-product) ul.products li.product a.add_to_cart_button:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.ajax_add_to_cart:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.product_type_simple:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.product_type_variable:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.product_type_grouped:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.product_type_external:before {
  color: var(--color-title) !important;
}

body.woocommerce-page:not(.single-product) ul.products li.product a.add_to_cart_button:hover:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.ajax_add_to_cart:hover:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.product_type_simple:hover:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.product_type_variable:hover:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.product_type_grouped:hover:before,
body.woocommerce-page:not(.single-product) ul.products li.product a.product_type_external:hover:before {
  color: var(--color-text) !important;
}

body.woocommerce-page:not(.single-product) ul.products li.product a.button.product_type_variable:after {
  color: var(--color-title) !important;
}


/* ============================================================
   IMAGINI DE PRODUS — ACEEAȘI DIMENSIUNE, FĂRĂ CROP
   ============================================================ */

:root {
  --lnl-ratio: 4 / 5;
  --lnl-mat: #f7f4ef;
}

.woocommerce ul.products li.product .post_featured img,
.woocommerce-page ul.products li.product .post_featured img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: var(--lnl-ratio) !important;
  object-fit: contain !important;
  object-position: center !important;
  background: var(--lnl-mat) !important;
}

/* ------------------------------------------------------------
   PAGINA DE PRODUS
   ------------------------------------------------------------ */
.woocommerce div.product .woocommerce-product-gallery__image img,
.woocommerce-page div.product .woocommerce-product-gallery__image img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: var(--lnl-ratio) !important;
  object-fit: contain !important;
  object-position: center !important;
  background: var(--lnl-mat) !important;
}

/* ------------------------------------------------------------
   MINIATURILE DIN COȘ
   ------------------------------------------------------------ */
.sidebar.widget_area .woocommerce-mini-cart .mini_cart_item img,
.woocommerce-mini-cart .mini_cart_item img {
  object-fit: contain !important;
  background: var(--lnl-mat) !important;
}

/* ------------------------------------------------------------
   PRODUCT SHORT DESCRIPTION DIN PAGINA DE SHOP
   ------------------------------------------------------------ */

.lnl-loop-short-desc {
	font-family: var(--font-text, inherit);
	font-size: 13px;
	line-height: 1.45;
	color: rgba(0,0,0,.6);
	margin: 4px 0 8px;
	min-height: calc(1.45em * 3);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}