/* Lakara: single product (PDP) styles (template 73), ported from design/single-product.html. */

.elementor-kit-8.elementor-kit-8 {
  --lakara-trust-shield: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20stroke='%23000'%20stroke-width='1.25'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M10%202.5%203.5%205v4.2c0%203.7%202.7%206.5%206.5%208.3%203.8-1.8%206.5-4.6%206.5-8.3V5L10%202.5Z'/%3E%3Cpath%20d='M7.3%2010%209.2%2012l3.5-3.7'/%3E%3C/svg%3E");
}

.elementor-kit-8.elementor-kit-8 .wrap,
.elementor-kit-8.elementor-kit-8 .pdp,
.elementor-kit-8.elementor-kit-8 .buy,
.elementor-kit-8.elementor-kit-8 .buy__rule,
.elementor-kit-8.elementor-kit-8 .shelf,
.elementor-kit-8.elementor-kit-8 .shelf__head,
.elementor-kit-8.elementor-kit-8 .grid,
.elementor-kit-8.elementor-kit-8 .card {
  padding: 0;
}

.elementor-kit-8.elementor-kit-8 .pdp > .elementor-widget,
.elementor-kit-8.elementor-kit-8 .buy > .elementor-widget,
.elementor-kit-8.elementor-kit-8 .shelf > .elementor-widget {
  margin: 0;
}
.elementor-kit-8.elementor-kit-8 .pdp > * { align-self: start; }

.elementor-kit-8.elementor-kit-8 .buy .elementor-widget-container,
.elementor-kit-8.elementor-kit-8 .pdp .elementor-widget-container,
.elementor-kit-8.elementor-kit-8 .buy .elementor-shortcode,
.elementor-kit-8.elementor-kit-8 .pdp .elementor-shortcode {
  margin: 0;
  padding: 0;
}

.elementor-kit-8.elementor-kit-8 .wrap {
  display: block;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 var(--lakara-space-md);
  width: 100%;
}

.elementor-kit-8.elementor-kit-8 .crumb {
  padding: var(--lakara-space-md) 0 var(--lakara-space-sm);
  font-family: var(--lakara-font-body);
  font-size: var(--lakara-size-label);
  line-height: 1.65;
  color: var(--lakara-ink-soft);
}

.elementor-kit-8.elementor-kit-8 .crumb .woocommerce-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.55rem;
  margin: 0;
  font-size: inherit;
  color: inherit;
}
.elementor-kit-8.elementor-kit-8 .crumb .crumb__sep { color: var(--lakara-line); }
.elementor-kit-8.elementor-kit-8 .crumb a {
  color: var(--lakara-ink-soft);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: color var(--lakara-dur) var(--lakara-ease),
              border-color var(--lakara-dur) var(--lakara-ease);
}
.elementor-kit-8.elementor-kit-8 .crumb a:hover {
  color: var(--lakara-gold-ink);
  border-bottom-color: var(--lakara-gold-ink);
}

.elementor-kit-8.elementor-kit-8 .pdp {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr);
  gap: clamp(2rem, 4.5vw, 5rem);
  align-items: start;
  padding-bottom: var(--lakara-space-xl);
  width: 100%;
}

.elementor-kit-8.elementor-kit-8 .gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--lakara-space-xs);
  align-self: start;
  margin: 0;
  padding: 0;
}
.elementor-kit-8.elementor-kit-8 .gallery__tile {
  position: relative;
  aspect-ratio: 1;
  background: var(--lakara-surface);
  border: 1px solid var(--lakara-line);
  border-radius: var(--lakara-radius);
  display: grid;
  place-items: center;
  overflow: hidden;
  transition: border-color var(--lakara-dur) var(--lakara-ease);
}
.elementor-kit-8.elementor-kit-8 .gallery__tile:hover { border-color: var(--lakara-gold); }

.elementor-kit-8.elementor-kit-8 .gallery__photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.elementor-kit-8.elementor-kit-8 .gallery__mark {
  width: 46%;
  height: auto;
  opacity: 0.85;
}
.elementor-kit-8.elementor-kit-8 .gallery__badge {
  position: absolute;
  top: var(--lakara-space-sm);
  left: var(--lakara-space-sm);
  z-index: 1;
  font-family: var(--lakara-font-head);
  font-weight: 700;
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--lakara-ink);
  background: var(--lakara-gold);
  padding: 0.4rem 0.7rem;
  border-radius: var(--lakara-radius);
  margin: 0;
}

.elementor-kit-8.elementor-kit-8 .buy {
  max-width: 34rem;
  width: 100%;
  display: block;
}
.elementor-kit-8.elementor-kit-8 .buy__title {
  font-family: var(--lakara-font-head);
  font-weight: 700;
  font-size: var(--lakara-size-head);
  letter-spacing: -0.02em;
  line-height: 1.12;
  color: var(--lakara-ink);
  margin: 0 0 var(--lakara-space-sm);
  text-wrap: balance;
}

.elementor-kit-8.elementor-kit-8 .buy__price,
.elementor-kit-8.elementor-kit-8 .buy__price .price,
.elementor-kit-8.elementor-kit-8 .buy__price .woocommerce-Price-amount {
  font-family: var(--lakara-font-head);
  font-weight: 400;
  font-size: var(--lakara-size-subhead);
  color: var(--lakara-ink);
  line-height: 1.3;
}
.elementor-kit-8.elementor-kit-8 .buy__price { margin: 0 0 var(--lakara-space-md); }
.elementor-kit-8.elementor-kit-8 .buy__price .price { margin: 0; display: block; }
.elementor-kit-8.elementor-kit-8 .buy__price del {
  opacity: 0.5;
  margin-right: 0.5rem;
  font-size: 0.85em;
}
.elementor-kit-8.elementor-kit-8 .buy__price ins { text-decoration: none; }

.elementor-kit-8.elementor-kit-8 .buy__intro {
  font-family: var(--lakara-font-body);
  font-size: var(--lakara-size-body);
  line-height: 1.65;
  color: var(--lakara-ink-soft);
  margin: 0 0 var(--lakara-space-md);
  max-width: 46ch;
  text-wrap: pretty;
}
.elementor-kit-8.elementor-kit-8 .buy__intro p { margin: 0 0 0.7rem; }
.elementor-kit-8.elementor-kit-8 .buy__intro p:last-child { margin-bottom: 0; }

.elementor-kit-8.elementor-kit-8 .buy__intro:empty { display: none; }

.elementor-kit-8.elementor-kit-8 .buy__rule {
  height: 1px;
  background: var(--lakara-line);
  border: 0;
  margin: var(--lakara-space-md) 0;
}

.elementor-kit-8.elementor-kit-8 .buy__form .variations,
.elementor-kit-8.elementor-kit-8 .buy__form .variations tbody,
.elementor-kit-8.elementor-kit-8 .buy__form .variations tr,
.elementor-kit-8.elementor-kit-8 .buy__form .variations td,
.elementor-kit-8.elementor-kit-8 .buy__form .variations th {
  display: block;
  width: auto;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
}
.elementor-kit-8.elementor-kit-8 .buy__form .variations .label { display: none; }

.elementor-kit-8.elementor-kit-8 .buy__form .variations .reset_variations,
.elementor-kit-8.elementor-kit-8 .buy__form a.reset_variations {
  display: none !important;
}

.elementor-kit-8.elementor-kit-8 .buy__form .variations select {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
}

.elementor-kit-8.elementor-kit-8 .opt { margin-bottom: var(--lakara-space-md); }
.elementor-kit-8.elementor-kit-8 .opt__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--lakara-space-sm);
  margin-bottom: 0.7rem;
}
.elementor-kit-8.elementor-kit-8 .opt__label {
  font-family: var(--lakara-font-head);
  font-weight: 700;
  font-size: var(--lakara-size-label);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--lakara-ink);
}
.elementor-kit-8.elementor-kit-8 .opt__value {
  font-family: var(--lakara-font-body);
  font-size: var(--lakara-size-label);
  color: var(--lakara-ink-soft);
}

.elementor-kit-8.elementor-kit-8 .swatches { display: flex; flex-wrap: wrap; gap: 0.6rem; }
.elementor-kit-8.elementor-kit-8 button.swatch {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-family: var(--lakara-font-head);
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.3;
  letter-spacing: normal;
  text-transform: none;
  color: var(--lakara-ink);
  background: var(--lakara-white);
  border: 1px solid var(--lakara-line);
  border-radius: var(--lakara-radius);
  padding: 0.55rem 0.85rem;
  cursor: pointer;
  transition: border-color var(--lakara-dur) var(--lakara-ease);
}
.elementor-kit-8.elementor-kit-8 button.swatch:hover { border-color: var(--lakara-gold); }
.elementor-kit-8.elementor-kit-8 button.swatch[aria-pressed="true"] {
  border-color: var(--lakara-gold-ink);
  box-shadow: inset 0 0 0 1px var(--lakara-gold-ink);
}
.elementor-kit-8.elementor-kit-8 button.swatch[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
  text-decoration: line-through;
}
.elementor-kit-8.elementor-kit-8 .swatch__dot {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 1px solid rgba(20, 16, 26, 0.15);
  flex: 0 0 auto;
}

.elementor-kit-8.elementor-kit-8 .sizes { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.elementor-kit-8.elementor-kit-8 button.size {
  min-width: 48px;
  font-family: var(--lakara-font-head);
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.3;
  letter-spacing: normal;
  text-transform: none;
  color: var(--lakara-ink);
  background: var(--lakara-white);
  border: 1px solid var(--lakara-line);
  border-radius: var(--lakara-radius);
  padding: 0.55rem 0.4rem;
  text-align: center;
  cursor: pointer;
  transition: border-color var(--lakara-dur) var(--lakara-ease);
}
.elementor-kit-8.elementor-kit-8 button.size:hover { border-color: var(--lakara-gold); }
.elementor-kit-8.elementor-kit-8 button.size[aria-pressed="true"] {
  border-color: var(--lakara-gold-ink);
  box-shadow: inset 0 0 0 1px var(--lakara-gold-ink);
}
.elementor-kit-8.elementor-kit-8 button.size[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
  text-decoration: line-through;
}

.elementor-kit-8.elementor-kit-8 .buy__form .single_variation_wrap { margin: 0; }
.elementor-kit-8.elementor-kit-8 .buy__form .woocommerce-variation-add-to-cart {
  display: flex;
  gap: var(--lakara-space-sm);
  align-items: stretch;
  margin-top: var(--lakara-space-md);
}

.elementor-kit-8.elementor-kit-8 .buy__form .quantity {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip-path: inset(50%);
  overflow: hidden;
}

.elementor-kit-8.elementor-kit-8.woocommerce button.single_add_to_cart_button.button.alt,
.elementor-kit-8.elementor-kit-8 .woocommerce div.product form.cart .button.single_add_to_cart_button,
.elementor-kit-8.elementor-kit-8 .buy__form button.single_add_to_cart_button {
  flex: 1;
  font-family: var(--lakara-font-body);
  font-weight: 400;
  font-size: var(--lakara-size-label);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  line-height: 1.3;
  color: var(--lakara-ink);
  background: var(--lakara-gold);
  border: 1px solid var(--lakara-gold);
  border-radius: var(--lakara-radius);
  padding: 1.15rem 1.5rem;
  cursor: pointer;
  transition: background var(--lakara-dur) var(--lakara-ease),
              border-color var(--lakara-dur) var(--lakara-ease),
              color var(--lakara-dur) var(--lakara-ease);
}
.elementor-kit-8.elementor-kit-8.woocommerce button.single_add_to_cart_button.button.alt:hover,
.elementor-kit-8.elementor-kit-8 .woocommerce div.product form.cart .button.single_add_to_cart_button:hover,
.elementor-kit-8.elementor-kit-8 .buy__form button.single_add_to_cart_button:hover {
  background: var(--lakara-gold-deep);
  border-color: var(--lakara-gold-deep);
  color: var(--lakara-ink);
}

.elementor-kit-8.elementor-kit-8.woocommerce button.single_add_to_cart_button.button.alt.disabled,
.elementor-kit-8.elementor-kit-8 .woocommerce div.product form.cart .button.single_add_to_cart_button.disabled,
.elementor-kit-8.elementor-kit-8 .woocommerce div.product form.cart .button.single_add_to_cart_button:disabled,
.elementor-kit-8.elementor-kit-8 .buy__form button.single_add_to_cart_button.disabled,
.elementor-kit-8.elementor-kit-8 .buy__form button.single_add_to_cart_button:disabled {
  background: var(--lakara-surface);
  border-color: var(--lakara-line);
  color: var(--lakara-ink-soft);
  cursor: not-allowed;
  opacity: 1;
}

.elementor-kit-8.elementor-kit-8 button.wish {
  display: grid;
  place-items: center;
  width: 54px;
  padding: 0;
  letter-spacing: normal;
  text-transform: none;
  flex: 0 0 auto;
  background: var(--lakara-white);
  border: 1px solid var(--lakara-line);
  border-radius: var(--lakara-radius);
  color: var(--lakara-ink);
  cursor: pointer;
  transition: border-color var(--lakara-dur) var(--lakara-ease),
              color var(--lakara-dur) var(--lakara-ease);
}
.elementor-kit-8.elementor-kit-8 button.wish:hover {
  border-color: var(--lakara-gold);
  color: var(--lakara-gold-ink);
}
.elementor-kit-8.elementor-kit-8 button.wish[aria-pressed="true"] svg {
  fill: var(--lakara-gold);
  stroke: var(--lakara-gold-ink);
}

.elementor-kit-8.elementor-kit-8 .buy__hint {
  font-family: var(--lakara-font-body);
  font-size: var(--lakara-size-label);
  line-height: 1.65;
  color: var(--lakara-ink-soft);
  margin: 0.8rem 0 0;
  min-height: 1.2em;
}

.elementor-kit-8.elementor-kit-8 .buy__form .woocommerce-variation-price { display: none; }
.elementor-kit-8.elementor-kit-8 .buy__form .woocommerce-variation-availability {
  font-family: var(--lakara-font-body);
  font-size: var(--lakara-size-label);
  color: var(--lakara-ink-soft);
}
.elementor-kit-8.elementor-kit-8 .buy__form .woocommerce-variation-availability p { margin: 0.6rem 0 0; }

.elementor-kit-8.elementor-kit-8 .trust {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: var(--lakara-space-md) 0 0;
  padding-top: var(--lakara-space-md);
  border-top: 1px solid var(--lakara-line);
  font-family: var(--lakara-font-body);
  font-size: var(--lakara-size-label);
  line-height: 1.65;
  color: var(--lakara-ink-soft);
}

.elementor-kit-8.elementor-kit-8 .trust::before {
  content: "";
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  background-color: var(--lakara-gold-ink);
  -webkit-mask: var(--lakara-trust-shield) center / contain no-repeat;
  mask: var(--lakara-trust-shield) center / contain no-repeat;
}

.elementor-kit-8.elementor-kit-8 .trust:empty { display: none; }

.elementor-kit-8.elementor-kit-8 .acc {
  margin-top: var(--lakara-space-md);
  border-top: 1px solid var(--lakara-line);
}
.elementor-kit-8.elementor-kit-8 .acc details { border-bottom: 1px solid var(--lakara-line); }
.elementor-kit-8.elementor-kit-8 .acc summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.15rem 0;
  font-family: var(--lakara-font-head);
  font-weight: 700;
  font-size: var(--lakara-size-label);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--lakara-ink);
  cursor: pointer;
  list-style: none;
}
.elementor-kit-8.elementor-kit-8 .acc summary::-webkit-details-marker { display: none; }
.elementor-kit-8.elementor-kit-8 .acc summary::marker { content: ""; }
.elementor-kit-8.elementor-kit-8 .acc summary svg {
  transition: transform var(--lakara-dur) var(--lakara-ease);
  flex: 0 0 auto;
}
.elementor-kit-8.elementor-kit-8 .acc details[open] summary svg { transform: rotate(180deg); }
.elementor-kit-8.elementor-kit-8 .acc__body {
  padding: 0 0 1.3rem;
  font-family: var(--lakara-font-body);
  font-size: var(--lakara-size-body);
  line-height: 1.65;
  color: var(--lakara-ink-soft);
  max-width: 60ch;
}
.elementor-kit-8.elementor-kit-8 .acc__body p { margin: 0 0 0.7rem; }
.elementor-kit-8.elementor-kit-8 .acc__body p:last-child { margin-bottom: 0; }
.elementor-kit-8.elementor-kit-8 .acc__specs { list-style: none; margin: 0; padding: 0; }
.elementor-kit-8.elementor-kit-8 .acc__specs li {
  display: flex;
  justify-content: space-between;
  gap: var(--lakara-space-sm);
  padding: 0.5rem 0;
  border-bottom: 1px solid var(--lakara-line);
}
.elementor-kit-8.elementor-kit-8 .acc__specs li:last-child { border-bottom: 0; }
.elementor-kit-8.elementor-kit-8 .acc__specs dt,
.elementor-kit-8.elementor-kit-8 .acc__specs dd { margin: 0; }
.elementor-kit-8.elementor-kit-8 .acc__specs .k {
  color: var(--lakara-ink);
  font-family: var(--lakara-font-head);
}
.elementor-kit-8.elementor-kit-8 .acc__specs .v {
  color: var(--lakara-ink-soft);
  text-align: right;
}

.elementor-kit-8.elementor-kit-8 .shelf {
  border-top: 1px solid var(--lakara-line);
  padding: var(--lakara-space-xl) 0;
  width: 100%;
}
.elementor-kit-8.elementor-kit-8 .shelf:last-of-type { border-bottom: 1px solid var(--lakara-line); }

.elementor-kit-8.elementor-kit-8 .shelf:has(.e-loop-nothing-found-message) { display: none; }
.elementor-kit-8.elementor-kit-8 .shelf__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--lakara-space-md);
  margin-bottom: var(--lakara-space-lg);
}
.elementor-kit-8.elementor-kit-8 .shelf__title {
  font-family: var(--lakara-font-head);
  font-weight: 700;
  font-size: var(--lakara-size-head);
  letter-spacing: -0.01em;
  color: var(--lakara-ink);
  margin: 0;
}
.elementor-kit-8.elementor-kit-8 .shelf__all {
  font-family: var(--lakara-font-body);
  font-size: var(--lakara-size-label);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--lakara-gold-ink);
  text-decoration: none;
  background: none;
  border: 0;
  border-bottom: 1px solid currentColor;
  border-radius: 0;
  padding: 0 0 3px;
  white-space: nowrap;
  transition: color var(--lakara-dur) var(--lakara-ease);
}
.elementor-kit-8.elementor-kit-8 .shelf__all:hover {
  color: var(--lakara-ink);
  background: none;
}

.elementor-kit-8.elementor-kit-8 .shelf .elementor-loop-container,
.elementor-kit-8.elementor-kit-8 .shelf .elementor-grid,
.elementor-kit-8.elementor-kit-8 .grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: var(--lakara-space-md);
}

.elementor-kit-8.elementor-kit-8 .card {
  text-decoration: none;
  color: inherit;
  display: block;
}

.elementor-kit-8.elementor-kit-8 .card__img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  background: var(--lakara-surface);
  border: 1px solid var(--lakara-line);
  border-radius: var(--lakara-radius);
  transition: border-color var(--lakara-dur) var(--lakara-ease);
}
.elementor-kit-8.elementor-kit-8 .card:hover .card__img { border-color: var(--lakara-gold); }
.elementor-kit-8.elementor-kit-8 .card__eyebrow {
  font-family: var(--lakara-font-head);
  font-size: var(--lakara-size-label);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--lakara-ink-soft);
  margin: 0.9rem 0 0.2rem;
}
.elementor-kit-8.elementor-kit-8 .card__name {
  font-family: var(--lakara-font-head);
  font-weight: 400;
  font-size: 1.05rem;
  line-height: 1.3;
  color: var(--lakara-ink);
  margin: 0 0 0.25rem;
}
.elementor-kit-8.elementor-kit-8 .card__price {
  font-family: var(--lakara-font-head);
  font-size: 0.95rem;
  color: var(--lakara-ink);
  margin: 0;
}
.elementor-kit-8.elementor-kit-8 .card__price .woocommerce-Price-amount { font-size: inherit; }
.elementor-kit-8.elementor-kit-8 .card__price del { opacity: 0.5; margin-right: 0.4rem; }
.elementor-kit-8.elementor-kit-8 .card__price ins { text-decoration: none; }

@media (max-width: 1023px) {
  .elementor-kit-8.elementor-kit-8 .pdp {
    grid-template-columns: 1fr;
    gap: var(--lakara-space-lg);
  }
  .elementor-kit-8.elementor-kit-8 .buy { max-width: none; }
}

@media (max-width: 640px) {
  .elementor-kit-8.elementor-kit-8 .wrap { padding: 0 var(--lakara-space-sm); }

  .elementor-kit-8.elementor-kit-8 .gallery { gap: 6px; }
  .elementor-kit-8.elementor-kit-8 .buy__form .woocommerce-variation-add-to-cart { flex-wrap: wrap; }
  .elementor-kit-8.elementor-kit-8 .shelf .elementor-loop-container,
  .elementor-kit-8.elementor-kit-8 .shelf .elementor-grid,
  .elementor-kit-8.elementor-kit-8 .grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--lakara-space-sm);
  }
  .elementor-kit-8.elementor-kit-8 .card__eyebrow { font-size: 0.7rem; }
  .elementor-kit-8.elementor-kit-8 .card__name { font-size: 0.95rem; }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-kit-8.elementor-kit-8 .pdp *,
  .elementor-kit-8.elementor-kit-8 .shelf * { transition-duration: 0.01ms !important; }
}
