/* ======================================
   ARAUMA SINGLE PRODUCT PAGE
   ====================================== */

.single-product {
  /* Product-specific overrides of global variables */
  --arauma-gold:               #c6a04a;
  --arauma-text-dark:          #0e0e0e;
  --arauma-text-muted:         #7a7a7a;
  --arauma-bg-soft:            rgba(14, 130, 114, 0.04);
  --arauma-bg-soft-hover:      rgba(14, 130, 114, 0.05);
  --arauma-border-soft:        #e8e8e4;
  --arauma-border-soft-2:      #d7d7d7;
  --arauma-border-input:       #cfcfcf;
  --arauma-border-muted:       rgba(14, 14, 14, 0.08);
  --arauma-border-muted-soft:  rgba(14, 14, 14, 0.06);
  --arauma-border-green-soft:  rgba(14, 130, 114, 0.16);
  --arauma-qty-width:          58px;
  --arauma-transition:         0.18s ease;
}

/* ======================================
   BASE
   ====================================== */

.single-product .woocommerce,
.single-product .woocommerce * {
  font-family: var(--arauma-font);
}

/* ======================================
   NOTIFICACIÓN "AÑADIDO AL CARRITO"
   ====================================== */

/* Wrapper fijo debajo del menú sticky */
.single-product .woocommerce-notices-wrapper {
  position: fixed !important;
  top: 80px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: calc(100vw - 48px) !important;
  max-width: 400px !important;
  z-index: 9999 !important;
  pointer-events: none !important;
}

.single-product .woocommerce-notices-wrapper .woocommerce-message {
  pointer-events: auto !important;
  background: var(--arauma-white) !important;
  border: none !important;
  border-left: 3px solid var(--arauma-green) !important;
  border-radius: var(--arauma-radius-sm) !important;
  box-shadow: var(--arauma-shadow-md) !important;
  padding: 14px 16px !important;
  font-family: var(--arauma-font) !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  color: var(--arauma-text-dark) !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
}

/* Ocultar icono nativo de WooCommerce */
.single-product .woocommerce-notices-wrapper .woocommerce-message::before {
  display: none !important;
}

/* Botón "Ver carrito" — orden 3, al final */
.single-product .woocommerce-notices-wrapper .woocommerce-message .button {
  order: 3 !important;
  font-family: var(--arauma-font) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--arauma-green) !important;
  background: transparent !important;
  border: 1px solid var(--arauma-green) !important;
  border-radius: var(--arauma-radius-sm) !important;
  padding: 5px 12px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  margin-left: auto !important;
  transition: background var(--arauma-transition), color var(--arauma-transition) !important;
}

.single-product .woocommerce-notices-wrapper .woocommerce-message .button:hover {
  background: var(--arauma-green) !important;
  color: var(--arauma-white) !important;
}

.single-product .woocommerce-notices-wrapper:empty,
.single-product .woocommerce-product-details__short-description,
.single-product .product_meta,
.single-product .woocommerce-tabs,
.single-product .arauma-product-story {
  display: none !important;
}

.single-product .woocommerce-breadcrumb {
  max-width: 1100px;
  margin: 0 auto 18px;
  padding: 0 20px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--arauma-text-soft);
}

.single-product .woocommerce-breadcrumb a {
  color: var(--arauma-text-muted);
  text-decoration: none;
  transition: color var(--arauma-transition);
}

.single-product .woocommerce-breadcrumb a:hover {
  color: var(--arauma-green);
}

/* ======================================
   MAIN LAYOUT
   ====================================== */

.single-product .woocommerce div.product {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  column-gap: 48px !important;
  row-gap: 48px !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 8px 20px 32px !important;
  position: relative;
}

.single-product .woocommerce div.product::before,
.single-product .woocommerce div.product::after {
  display: none !important;
}

.single-product .woocommerce div.product > .woocommerce-product-gallery,
.single-product .woocommerce div.product > .summary.entry-summary,
.single-product .woocommerce div.product > .related.products {
  float: none !important;
  margin: 0 !important;
}

.single-product .woocommerce div.product > .woocommerce-product-gallery {
  flex: 0 1 460px !important;
  max-width: 460px !important;
  width: 100% !important;
  order: 1 !important;
  margin-top: 120px !important;
}

.single-product .woocommerce div.product > .summary.entry-summary {
  flex: 0 1 440px !important;
  max-width: 440px !important;
  width: 100% !important;
  order: 2 !important;
  margin-top: 120px !important;
}

.single-product .woocommerce div.product > .related.products {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  order: 3 !important;
  clear: both !important;
  margin-top: 12px !important;
  padding-top: 24px !important;
  border-top: 1px solid var(--arauma-border-muted) !important;
}

/* ======================================
   GALLERY
   ====================================== */

.single-product .woocommerce div.product .woocommerce-product-gallery {
  display: flex !important;
  flex-direction: column;
  justify-content: flex-start;
}

.single-product .woocommerce div.product .woocommerce-product-gallery img {
  display: block !important;
  width: 100% !important;
  max-width: 420px !important;
  height: auto !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}

.single-product .woocommerce div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
}

.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li {
  width: var(--arauma-thumb-width) !important;
  margin: 0 !important;
}

.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs img {
  background: var(--arauma-white);
  border: 1px solid var(--arauma-border-soft);
  border-radius: var(--arauma-radius-sm);
  transition: border-color var(--arauma-transition);
}

.single-product
  .woocommerce
  div.product
  .woocommerce-product-gallery
  .flex-control-thumbs
  img:hover,
.single-product
  .woocommerce
  div.product
  .woocommerce-product-gallery
  .flex-control-thumbs
  .flex-active {
  border-color: var(--arauma-green);
}

/* ======================================
   SUMMARY PANEL
   ====================================== */

.single-product .summary.entry-summary {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  padding: 24px 24px 28px !important;
  overflow: hidden !important;
  background: var(--arauma-white) !important;
  border: 1px solid var(--arauma-border-muted-soft) !important;
  border-radius: var(--arauma-radius-lg) !important;
  box-shadow: var(--arauma-shadow-sm), var(--arauma-shadow-md);
}

.single-product .summary.entry-summary > .product_title {
  order: 1 !important;
  width: 100% !important;
}

.single-product .summary.entry-summary > .price {
  order: 2 !important;
  width: 100% !important;
}

.single-product .summary.entry-summary > .arauma-top-intro {
  order: 3 !important;
  width: 100% !important;
}

.single-product .summary.entry-summary > form.cart {
  order: 4 !important;
  width: 100% !important;
}

.single-product .summary.entry-summary > .arauma-right-panel {
  order: 5 !important;
}

.single-product .product_title {
  margin: 0 0 8px !important;
  color: var(--arauma-text-dark) !important;
  font-size: 26px !important;
  line-height: 1.1 !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.single-product .price {
  margin-bottom: 10px !important;
  color: var(--arauma-gold) !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
}

.single-product .price del {
  margin-right: 10px;
  color: #6a6a6a !important;
  opacity: 0.9;
}

.single-product .price ins {
  color: var(--arauma-gold) !important;
  text-decoration: none !important;
}

/* ======================================
   TOP INTRO
   ====================================== */

.single-product .summary.entry-summary .arauma-top-intro {
  margin: 10px 0 20px !important;
  padding: 0 0 18px !important;
  border-bottom: 1px solid var(--arauma-border-muted) !important;
}

.single-product .summary.entry-summary .arauma-top-intro__text {
  margin: 0 0 14px;
  max-width: 42ch;
  color: var(--arauma-text-body);
  font-size: 15px;
  line-height: 1.75;
}

.single-product .summary.entry-summary .arauma-top-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.single-product .summary.entry-summary .arauma-top-note {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  background: var(--arauma-bg-soft);
  border: 1px solid var(--arauma-border-green-soft);
  border-radius: var(--arauma-radius-pill);
  color: var(--arauma-green);
  font-size: 12px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.02em;
}

/* ======================================
   VARIATIONS
   ====================================== */

.single-product form.cart {
  margin: 0 0 20px !important;
  padding: 0 0 20px !important;
  border-bottom: 1px solid var(--arauma-border-muted) !important;
}

.single-product table.variations {
  width: 100% !important;
  margin-bottom: 26px !important;
  border: 0 !important;
}

.single-product table.variations tbody,
.single-product table.variations tr,
.single-product table.variations td,
.single-product table.variations th {
  display: block;
  width: 100%;
  padding: 0;
  border: 0 !important;
}

.single-product table.variations tr + tr {
  margin-top: 22px !important;
}

.single-product table.variations label {
  display: block;
  margin-bottom: 12px !important;
  color: #151515 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
}

.single-product table.variations select {
  width: 100% !important;
  max-width: 330px !important;
  min-height: var(--arauma-control-height) !important;
  padding: 0 14px !important;
  background: var(--arauma-white) !important;
  border: 1px solid var(--arauma-border-input) !important;
  border-radius: var(--arauma-radius-sm) !important;
  color: #1c1c1c !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  box-shadow: none !important;
  outline: none !important;
  appearance: none;
  -webkit-appearance: none;
}

.single-product table.variations select:hover,
.single-product table.variations select:focus {
  border-color: var(--arauma-green) !important;
  color: var(--arauma-green) !important;
}

.single-product .reset_variations {
  display: inline-block !important;
  margin-top: 4px !important;
  color: #c86a6a !important;
  font-size: 12px !important;
  text-decoration: none !important;
}

.single-product .reset_variations:hover {
  color: var(--arauma-green) !important;
}

/* ======================================
   SWATCHES
   ====================================== */

.single-product .variable-items-wrapper,
.single-product .woo-variation-swatches .variable-items-wrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.single-product .variable-item,
.single-product .woo-variation-swatches .variable-item {
  margin: 0 !important;
  box-shadow: none !important;
}

.single-product .variable-item:not(.radio-variable-item),
.single-product .woo-variation-swatches .variable-item:not(.radio-variable-item) {
  min-width: 92px !important;
  min-height: var(--arauma-control-height) !important;
  padding: 0 16px !important;
  background: var(--arauma-white) !important;
  border: 1px solid var(--arauma-border-input) !important;
  border-radius: var(--arauma-radius-sm) !important;
  color: #1c1c1c !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  transition:
    border-color var(--arauma-transition),
    color var(--arauma-transition),
    background var(--arauma-transition) !important;
}

.single-product .variable-item:not(.radio-variable-item):hover,
.single-product .variable-item:not(.radio-variable-item):focus,
.single-product .woo-variation-swatches .variable-item:not(.radio-variable-item):hover,
.single-product .woo-variation-swatches .variable-item:not(.radio-variable-item):focus {
  background: var(--arauma-white) !important;
  border-color: var(--arauma-green) !important;
  color: var(--arauma-green) !important;
}

.single-product .variable-item.selected:not(.radio-variable-item),
.single-product .variable-item.selected:not(.radio-variable-item):hover,
.single-product .woo-variation-swatches .variable-item.selected:not(.radio-variable-item),
.single-product .woo-variation-swatches .variable-item.selected:not(.radio-variable-item):hover {
  background: var(--arauma-bg-soft-hover) !important;
  border-color: var(--arauma-green) !important;
  color: var(--arauma-green) !important;
  box-shadow: none !important;
}

.single-product .variable-item .variable-item-span,
.single-product .woo-variation-swatches .variable-item .variable-item-span {
  color: inherit !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
}

/* ======================================
   QUANTITY + BUTTON
   ====================================== */

.single-product .variations_button,
.single-product .single_variation_wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 10px !important;
  margin-top: 8px !important;
}

.single-product .quantity {
  float: none !important;
  margin: 0 !important;
}

.single-product .quantity .qty {
  width: var(--arauma-qty-width) !important;
  min-width: var(--arauma-qty-width) !important;
  height: var(--arauma-control-height) !important;
  padding: 0 8px !important;
  background: var(--arauma-white) !important;
  border: 1px solid var(--arauma-border-soft-2) !important;
  border-radius: var(--arauma-radius-sm) !important;
  color: var(--arauma-text-dark) !important;
  text-align: center !important;
  font-size: 18px !important;
  box-shadow: none !important;
  outline: none !important;
}

.single-product .quantity .qty::-webkit-outer-spin-button,
.single-product .quantity .qty::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.single-product .quantity .qty[type="number"] {
  -moz-appearance: textfield;
}

.single-product .single_add_to_cart_button {
  width: 100% !important;
  height: var(--arauma-control-height) !important;
  padding: 0 26px !important;
  background: var(--arauma-green) !important;
  border: 1px solid var(--arauma-green) !important;
  border-radius: var(--arauma-radius-md) !important;
  color: var(--arauma-white) !important;
  font-family: var(--arauma-font) !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  box-shadow: none !important;
  text-shadow: none !important;
  transition:
    background var(--arauma-transition),
    border-color var(--arauma-transition) !important;
}

.single-product .single_add_to_cart_button:hover {
  background: var(--arauma-green-hover) !important;
  border-color: var(--arauma-green-hover) !important;
  color: var(--arauma-white) !important;
}

/* ======================================
   RIGHT PANEL CONTENT
   ====================================== */

.single-product .arauma-right-panel {
  margin-top: 20px;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

.single-product .arauma-right-section {
  padding: 22px 0 24px !important;
}

.single-product .arauma-right-section + .arauma-right-section {
  border-top: 1px solid var(--arauma-border-muted);
}

.single-product .arauma-eyebrow,
.single-product .arauma-right-section .arauma-eyebrow {
  margin: 0 0 10px;
  color: var(--arauma-green);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.single-product .arauma-section-title,
.single-product .arauma-right-section .arauma-section-title {
  margin: 0 0 18px;
  color: var(--arauma-text-dark);
  font-size: 22px;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: 0.01em;
}

/* Specs */

.single-product .arauma-specs-grid,
.single-product .arauma-right-section .arauma-specs-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 16px;
}

.single-product .arauma-spec-item,
.single-product .arauma-right-section .arauma-spec-item {
  padding: 0 0 10px;
  border-bottom: 1px solid var(--arauma-border-muted);
}

.single-product .arauma-spec-label,
.single-product .arauma-right-section .arauma-spec-label {
  display: block;
  margin-bottom: 5px;
  color: var(--arauma-text-light);
  font-size: 10px;
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.single-product .arauma-spec-value,
.single-product .arauma-right-section .arauma-spec-value {
  display: block;
  color: var(--arauma-text-dark);
  font-size: 14px;
  line-height: 1.45;
}

/* Tags */

.single-product .arauma-tags,
.single-product .arauma-right-section .arauma-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}

.single-product .arauma-tag,
.single-product .arauma-right-section .arauma-tag {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 11px;
  background: var(--arauma-bg-soft);
  border: 1px solid var(--arauma-border-green-soft);
  border-radius: var(--arauma-radius-pill);
  color: var(--arauma-green);
  font-size: 12px;
  font-weight: 500;
}

/* Meters */

.single-product .arauma-meter-list,
.single-product .arauma-right-section .arauma-meter-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.single-product .arauma-meter__top,
.single-product .arauma-right-section .arauma-meter__top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 7px;
  color: var(--arauma-text-body);
  font-size: 12px;
  line-height: 1.2;
}

.single-product .arauma-meter__top span:first-child,
.single-product .arauma-right-section .arauma-meter__top span:first-child {
  color: var(--arauma-text-dark);
  font-weight: 500;
}

.single-product .arauma-meter__bar,
.single-product .arauma-right-section .arauma-meter__bar {
  width: 100%;
  height: 6px;
  background: var(--arauma-border-muted);
  border-radius: var(--arauma-radius-pill);
  overflow: hidden;
}

.single-product .arauma-meter__bar span,
.single-product .arauma-right-section .arauma-meter__bar span {
  display: block;
  height: 100%;
  background: var(--arauma-green);
  border-radius: var(--arauma-radius-pill);
}

/* Brew */

.single-product .arauma-brew-steps,
.single-product .arauma-right-section .arauma-brew-steps {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.single-product .arauma-step,
.single-product .arauma-right-section .arauma-step {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 12px;
  align-items: flex-start;
}

.single-product .arauma-step__num,
.single-product .arauma-right-section .arauma-step__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  background: var(--arauma-bg-soft);
  border: 1px solid var(--arauma-border-green-soft);
  border-radius: 50%;
  color: var(--arauma-green);
  font-size: 12px;
  font-weight: 500;
}

.single-product .arauma-step strong,
.single-product .arauma-right-section .arauma-step strong {
  display: block;
  margin-bottom: 3px;
  color: var(--arauma-text-dark);
  font-size: 14px;
  line-height: 1.4;
  font-weight: 500;
}

.single-product .arauma-step p,
.single-product .arauma-right-section .arauma-step p {
  margin: 0;
  color: var(--arauma-text-body);
  font-size: 13px;
  line-height: 1.65;
}

.single-product .arauma-step,
.single-product .arauma-right-section .arauma-step {
  align-items: center;
}

/* Story */

.single-product .arauma-story-copy p,
.single-product .arauma-right-section .arauma-story-copy p {
  margin: 0 0 14px;
  color: var(--arauma-text-body);
  font-size: 14px;
  line-height: 1.75;
}

.single-product .arauma-story-copy p:last-child,
.single-product .arauma-right-section .arauma-story-copy p:last-child {
  margin-bottom: 0;
}

/* ======================================
   RELATED
   ====================================== */

.single-product .woocommerce div.product > .related.products > h2 {
  margin: 0 0 20px !important;
  color: var(--arauma-text-dark) !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* ======================================
   RESPONSIVE
   ====================================== */

@media (max-width: 1024px) {
  .single-product .woocommerce div.product {
    column-gap: 0 !important;
    row-gap: 34px !important;
    padding: 8px 18px 26px !important;
  }

  .single-product .woocommerce div.product > .woocommerce-product-gallery,
  .single-product .woocommerce div.product > .summary.entry-summary,
  .single-product .woocommerce div.product > .related.products {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}

@media (max-width: 767px) {
  .single-product .woocommerce-breadcrumb,
  .single-product .woocommerce div.product {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .single-product .woocommerce div.product {
    row-gap: 26px !important;
    padding-top: 8px !important;
    padding-bottom: 22px !important;
  }

  .single-product div.product > .woocommerce-product-gallery,
  .single-product .woocommerce div.product > .woocommerce-product-gallery,
  .single-product div.product > .summary.entry-summary,
  .single-product .woocommerce div.product > .summary.entry-summary {
    margin-top: 60px !important;
  }

  .single-product .product_title {
    font-size: 22px !important;
  }

  .single-product .arauma-specs-grid {
    grid-template-columns: 1fr !important;
  }

  .single-product .variations_button,
  .single-product .single_variation_wrap {
    flex-wrap: wrap !important;
  }

  .single-product .single_add_to_cart_button {
    width: 100% !important;
  }
}

/* ======================================
   VARIATIONS BLOCK BACKGROUND CLEANUP
   ====================================== */

.single-product table.variations td.value,
.single-product table.variations .value,
.single-product .woo-variation-swatches .variable-items-wrapper,
.single-product .woo-variation-swatches .variations_form .variations td,
.single-product .woo-variation-swatches .variations_form .variations th,
.single-product .woo-variation-swatches .variations_form .variations tr {
  background: transparent !important;
  box-shadow: none !important;
}

.single-product table.variations tr, .single-product table.variations th {
  background: transparent !important;
}

.single-product table.variations {
  background: transparent !important;
}

/* ======================================
   HIDE SELECTED VALUE NEXT TO LABEL
   ====================================== */

.single-product .woo-selected-variation-item-name
{
  display: none !important;
}

/* ======================================
   CUSTOM QUANTITY LOOK
   ====================================== */

.single-product .single_variation_wrap {
  align-items: flex-start !important;
  margin-top: 4px !important;
}

/* Ocultar espacio extra del div de info de variación cuando está vacío */
.single-product .woocommerce-variation.single_variation {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.single-product .variations_button {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin-top: 0 !important;
}

.single-product .arauma-qty-label {
  display: block;
  margin-left: 2px !important;
  margin-bottom: 2px !important;
  color: #151515 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
}

.single-product .quantity {
  display: grid !important;
  grid-template-columns: 52px 1fr 52px !important;
  width: 208px !important;
  height: 48px !important;
  border: 1px solid var(--arauma-border-control) !important;
  border-radius: var(--arauma-radius-sm) !important;
  overflow: hidden !important;
  background: var(--arauma-white) !important;
}

.single-product .quantity button.qty-btn {
  width: 100%;
  height: 100%;
  border: none;
  background: var(--arauma-white) !important;
  color: var(--arauma-green) !important;
  font-size: 22px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: color var(--arauma-transition);
  outline: none !important;
  box-shadow: none !important;
}

.single-product .quantity button.qty-btn:hover,
.single-product .quantity button.qty-btn:focus {
  background: var(--arauma-white) !important;
  color: var(--arauma-green-hover) !important;
  outline: none !important;
  box-shadow: none !important;
}

.single-product .quantity .qty {
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 0 8px !important;
  border: 0 !important;
  border-left: 1px solid var(--arauma-border-control) !important;
  border-right: 1px solid var(--arauma-border-control) !important;
  border-radius: 0 !important;
  background: var(--arauma-white) !important;
  color: var(--arauma-text-dark) !important;
  text-align: center !important;
  font-size: 18px !important;
  box-shadow: none !important;
  outline: none !important;
}

.single-product .quantity .qty::-webkit-outer-spin-button,
.single-product .quantity .qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.single-product .quantity .qty[type="number"] {
  -moz-appearance: textfield;
}

/* ======================================
   ARAUMA PRODUCT PAGE BACKGROUND
   TONALIDAD ORGÁNICA PREMIUM
   ====================================== */

.single-product {
  background:
    radial-gradient(
      circle at 15% 10%,
      rgba(14,130,114,0.10) 0%,
      rgba(14,130,114,0.04) 25%,
      rgba(255,255,255,0) 45%
    ),
    linear-gradient(
      180deg,
      #f6f3ed 0%,
      #f3efe8 100%
    ) !important;
}

.single-product .woocommerce div.product > .related.products {
  background: #f1ede6 !important;
}

.single-product {
  background:
    radial-gradient(
      circle at 20% 5%,
      rgba(14,130,114,0.14) 0%,
      rgba(14,130,114,0.06) 25%,
      rgba(255,255,255,0) 50%
    ),
    linear-gradient(
      180deg,
      #f4f1ea 0%,
      #f0ece4 100%
    ) !important;
}

/* ======================================
   ARAUMA PRODUCT PAGE BACKGROUND
   CLEAN COLOR BLOCK
   ====================================== */

/* ======================================
   ARAUMA PRODUCT PAGE BACKGROUND
   ====================================== */

.single-product {
  background:
    linear-gradient(
      to bottom,
      var(--arauma-green) 0px,
      var(--arauma-green) 420px,
      var(--arauma-white) 420px,
      var(--arauma-white) 100%
    ) !important;
}

/* evitar que otros contenedores pongan fondo */
.single-product .site,
.single-product .site-main,
.single-product .content-area,
.single-product .elementor-location-single,
.single-product .woocommerce {
  background: transparent !important;
}

/* ======================================
   ARAUMA MAIN PRODUCT IMAGE
   HARD OVERRIDE
   ====================================== */

/* contenedor izquierdo */
.single-product .woocommerce div.product > .woocommerce-product-gallery {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

/* viewport principal */
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-viewport {
  width: 100% !important;
  height: 560px !important;
  min-height: 560px !important;
  max-height: 560px !important;
  overflow: hidden !important;
}

/* wrapper interno */
.single-product .woocommerce div.product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
  height: 560px !important;
}

/* cada slide */
.single-product .woocommerce div.product .woocommerce-product-gallery .woocommerce-product-gallery__image {
  height: 560px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

/* link de la imagen */
.single-product .woocommerce div.product .woocommerce-product-gallery .woocommerce-product-gallery__image > a {
  width: 100% !important;
  height: 560px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.single-product .woocommerce div.product .woocommerce-product-gallery .woocommerce-product-gallery__image > a > img.wp-post-image {
  width: 290px !important;
  max-width: 290px !important;
  min-width: 290px !important;
  height: 100% !important;
  max-height: 450px !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* ocultar imagen de zoom */
.single-product .woocommerce div.product .woocommerce-product-gallery .zoomImg {
}

/* Quitar botón de zoom de WooCommerce */
.single-product .woocommerce-product-gallery__trigger {
  display: none !important;
}

/* ======================================
   ARAUMA PRODUCT GALLERY THUMBNAILS
   ====================================== */

/* contenedor de miniaturas */
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center;
  gap: 14px !important;
  margin: 28px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* cada thumb */
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li {
  width: 92px !important;
  height: 118px !important;
  margin: 0 !important;
  flex: 0 0 92px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

/* imagen de thumb */
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  padding: 8px !important;
  background: rgba(255, 255, 255, 0.78) !important;
  border: 1px solid rgba(255, 255, 255, 0.38) !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.05) !important;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  transition:
    transform 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    background 0.18s ease !important;
  cursor: pointer;
}

/* hover */
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li img:hover {
  transform: translateY(-2px);
  border-color: rgba(14, 130, 114, 0.35) !important;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08) !important;
}

/* activo */
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
  transform: translateY(-2px);
  background: var(--arauma-white) !important;
  border-color: var(--arauma-green) !important;
  box-shadow:
    0 12px 24px rgba(0, 0, 0, 0.08),
    0 0 0 3px rgba(14, 130, 114, 0.10) !important;
}

.single-product .flex-control-thumbs img,
.single-product .flex-control-thumbs img.flex-active,
.single-product .flex-control-thumbs li,
.single-product .flex-control-thumbs li * {
  opacity: 1 !important;
  filter: none !important;
}

/* ======================================
   ARAUMA PRODUCT GALLERY STYLE
   ====================================== */

.single-product .flex-control-thumbs {
  display: flex !important;
  justify-content: center !important;
  gap: 8px;
}

/* cuadro fijo */
.single-product .flex-control-thumbs li {
  width: 120px !important;
  height: 160px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

/* imagen dentro del cuadro */
.single-product .flex-control-thumbs li img {
  width: auto !important;
  height: auto !important;
  max-width: calc(100% - 16px) !important;
  max-height: calc(100% - 16px) !important;
  display: block !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: transparent !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}


/* ======================================
   ARAUMA GALLERY ARROWS
   ====================================== */

.arauma-gallery-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: white;
  border: 1px solid rgba(0,0,0,0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all .2s ease;
  z-index: 10;
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
}

.arauma-gallery-arrow:hover {
  transform: translateY(-50%) scale(1.05);
}

.arauma-gallery-prev {
  left: -10px;
}

.arauma-gallery-next {
  right: -10px;
}

.arauma-gallery-arrow svg {
  width: 16px;
  height: 16px;
  fill: #0E0E0E;
}

/* ======================================
   ARAUMA GALLERY ARROWS – CLEAN
   ====================================== */

.arauma-gallery-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  z-index: 30;
  opacity: 0.9;
}

.arauma-gallery-prev {
  left: 28px;
}

.arauma-gallery-next {
  right: 28px;
}

.arauma-gallery-arrow svg {
  width: 42px;
  height: 42px;
  stroke: #c6a04a;
  stroke-width: 2.4;
  fill: none;
}

/* ======================================
   ARAUMA PRODUCT PAGE LAYOUT
   GRID 2 COLUMNAS + RELATED FULL WIDTH
   ====================================== */

.single-product div.product,
.single-product .woocommerce div.product,
body.single-product div.product,
body.single-product .woocommerce div.product {

  display: grid !important;

  grid-template-columns: minmax(0, 540px) minmax(0, 460px) !important;

  grid-template-areas:
    "gallery summary"
    "related related" !important;

  justify-content: center !important;
  align-items: start !important;

  column-gap: 64px !important;
  row-gap: 56px !important;

  max-width: 1180px !important;
  width: 100% !important;

  margin: 0 auto !important;
  padding: 8px 20px 32px !important;

  float: none !important;
  clear: none !important;
}

/* eliminar clearfix heredado */

.single-product div.product::before,
.single-product div.product::after,
.single-product .woocommerce div.product::before,
.single-product .woocommerce div.product::after {
  content: none !important;
}

/* ======================================
   GALLERY COLUMN
   ====================================== */

.single-product div.product > .woocommerce-product-gallery,
.single-product .woocommerce div.product > .woocommerce-product-gallery {

  grid-area: gallery !important;

  width: 100% !important;
  max-width: 540px !important;

  margin: 0 !important;
  margin-top: 120px !important;

  float: none !important;
  clear: none !important;
}

/* ======================================
   SUMMARY COLUMN
   ====================================== */

.single-product div.product > .summary.entry-summary,
.single-product .woocommerce div.product > .summary.entry-summary {

  grid-area: summary !important;

  width: 100% !important;
  max-width: 460px !important;

  margin: 0 !important;
  margin-top: 120px !important;

  float: none !important;
  clear: none !important;
}

/* reset widths que mete WooCommerce */

.single-product .woocommerce div.product div.images,
.single-product .woocommerce div.product div.summary,
.single-product .woocommerce-page div.product div.images,
.single-product .woocommerce-page div.product div.summary {

  float: none !important;
  width: 100% !important;
}

/* ======================================
   RELATED PRODUCTS SECTION
   ====================================== */

.single-product div.product > section.related.products,
.single-product .woocommerce div.product > section.related.products {

  grid-area: related !important;

  width: 100% !important;
  max-width: 100% !important;

  margin: 0 !important;

  padding-top: 36px !important;

  border-top: 1px solid rgba(14,14,14,0.08) !important;

  align-self: start !important;
}

/* ======================================
   RELATED TITLE
   ====================================== */

.single-product div.product > section.related.products > h2,
.single-product .woocommerce div.product > section.related.products > h2 {

  margin: 0 0 28px !important;

  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
}

.single-product div.product > section.related.products > h2::before,
.single-product .woocommerce div.product > section.related.products > h2::before {

  content: "Productos que te pueden interesar";

  display: block;

  font-size: 14px;
  line-height: 1.2;

  font-weight: 500;

  letter-spacing: 0.14em;
  text-transform: uppercase;

  color: #0E0E0E;
}

/* ======================================
   RELATED GRID
   ====================================== */

.single-product div.product > section.related.products > ul.products,
.single-product .woocommerce div.product > section.related.products > ul.products {

  display: grid !important;

  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

  gap: 24px !important;

  margin: 0 !important;
  padding: 0 !important;

  list-style: none !important;

  float: none !important;
}

/* limpiar pseudo elementos Woo */

.single-product div.product > section.related.products > ul.products::before,
.single-product div.product > section.related.products > ul.products::after,
.single-product div.product > section.related.products > ul.products > li.product::before,
.single-product div.product > section.related.products > ul.products > li.product::after {

  content: none !important;
}

/* ======================================
   RELATED PRODUCT CARD
   ====================================== */

.single-product div.product > section.related.products > ul.products > li.product {

  width: 100% !important;

  margin: 0 !important;

  float: none !important;

  display: flex !important;
  flex-direction: column !important;

  background: var(--arauma-white);

  border: 1px solid rgba(14,14,14,0.06);
  border-radius: 18px;

  overflow: hidden;

  box-shadow: 0 8px 24px rgba(0,0,0,0.04);

  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}

.single-product div.product > section.related.products > ul.products > li.product:hover {

  transform: translateY(-4px);

  border-color: rgba(14,130,114,0.18);

  box-shadow: 0 16px 34px rgba(0,0,0,0.08);
}

/* imagen */

.single-product div.product > section.related.products > ul.products > li.product img {

  width: 100%;
  height: 320px;

  object-fit: contain;

  padding: 24px 20px 18px;

  background: #f3efe8;

  border-bottom: 1px solid rgba(0,0,0,0.05);
}

/* título */

.single-product div.product > section.related.products > ul.products > li.product .woocommerce-loop-product__title {

  margin: 18px 18px 8px;

  font-size: 16px;
  font-weight: 500;

  text-transform: uppercase;

  color: #0E0E0E;
}

/* precio */

.single-product div.product > section.related.products > ul.products > li.product .price {

  margin: 0 18px 18px;

  color: #c6a04a;

  font-size: 15px;

  font-weight: 500;
}

/* ocultar elementos Woo */

.single-product div.product > section.related.products > ul.products > li.product .button,
.single-product div.product > section.related.products > ul.products > li.product .added_to_cart,
.single-product div.product > section.related.products > ul.products > li.product .star-rating,
.single-product div.product > section.related.products > ul.products > li.product .onsale {

  display: none !important;
}

/* ======================================
   RESPONSIVE
   ====================================== */

@media (max-width: 1024px) {

  /* Reducir padding del contenedor del tema en tablet */
  body.single-product .site-main,
  body.single-product #primary,
  body.single-product .content-area,
  body.single-product .entry-content,
  body.single-product .woocommerce {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  /* Tablet: mantener 2 columnas pero más compactas */
  .single-product div.product,
  .single-product .woocommerce div.product,
  body.single-product div.product,
  body.single-product .woocommerce div.product {

    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;

    column-gap: 24px !important;
    row-gap: 40px !important;

    padding: 8px 0 32px !important;
  }

  .single-product div.product > .woocommerce-product-gallery,
  .single-product .woocommerce div.product > .woocommerce-product-gallery,
  .single-product div.product > .summary.entry-summary,
  .single-product .woocommerce div.product > .summary.entry-summary {

    max-width: 100% !important;
    margin-top: 80px !important;
  }

  /* Tablet: corregir altura de galería — override FlexSlider inline styles */
  .single-product .woocommerce-product-gallery .flex-viewport,
  .single-product .woocommerce-product-gallery .woocommerce-product-gallery__image {
    height: calc(50vw - 56px) !important;
    min-height: 0 !important;
    max-height: 440px !important;
    overflow: hidden !important;
  }

  .single-product .woocommerce-product-gallery .woocommerce-product-gallery__image > a {
    height: calc(50vw - 56px) !important;
    min-height: 0 !important;
    max-height: 440px !important;
  }

  .single-product .woocommerce-product-gallery .flex-viewport img:not(.zoomImg) {
    width: 100% !important;
    height: calc(50vw - 56px) !important;
    min-height: 0 !important;
    max-height: 440px !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  .single-product div.product > section.related.products > ul.products {

    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
}

@media (max-width: 767px) {

  /* Force single-column layout */
  .single-product div.product,
  .single-product .woocommerce div.product,
  body.single-product div.product,
  body.single-product .woocommerce div.product {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "gallery"
      "summary"
      "related" !important;
    column-gap: 0 !important;
    row-gap: 0 !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* Reset fixed widths so columns fill full viewport */
  .single-product div.product > .woocommerce-product-gallery,
  .single-product .woocommerce div.product > .woocommerce-product-gallery,
  .single-product div.product > .summary.entry-summary,
  .single-product .woocommerce div.product > .summary.entry-summary {
    max-width: 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    margin-top: 60px !important;
  }

  /* Right panel — prevent overflow clipping */
  .single-product .arauma-right-panel {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  /* Section titles — smaller on mobile */
  .single-product .arauma-section-title,
  .single-product .arauma-right-section .arauma-section-title {
    font-size: 19px !important;
    line-height: 1.2 !important;
  }

  /* Brew steps — tighter number circle */
  .single-product .arauma-step,
  .single-product .arauma-right-section .arauma-step {
    grid-template-columns: 36px 1fr !important;
    gap: 10px !important;
  }

  .single-product .arauma-step__num,
  .single-product .arauma-right-section .arauma-step__num {
    width: 36px !important;
    height: 36px !important;
    font-size: 11px !important;
  }

  /* Gallery — override ALL FlexSlider inline styles (flex-viewport, slide div, a, img) */
  .single-product .woocommerce-product-gallery .flex-viewport,
  .single-product .woocommerce-product-gallery .woocommerce-product-gallery__image {
    height: 72vw !important;
    min-height: 0 !important;
    max-height: 72vw !important;
    overflow: hidden !important;
  }

  .single-product .woocommerce-product-gallery .woocommerce-product-gallery__image > a {
    height: 72vw !important;
    min-height: 0 !important;
    max-height: 72vw !important;
  }

  .single-product .woocommerce-product-gallery .flex-viewport img:not(.zoomImg) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 72vw !important;
    min-height: 0 !important;
    max-height: 72vw !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  /* Ocultar flechas doradas custom (JS) */
  .single-product .woocommerce-product-gallery .arauma-gallery-arrow {
    display: none !important;
  }

  /* Thumbnails → dots */
  .single-product .woocommerce-product-gallery .flex-control-thumbs {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 7px !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
  }

  .single-product .woocommerce-product-gallery .flex-control-thumbs li {
    width: 8px !important;
    height: 8px !important;
    flex: 0 0 8px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    background: rgba(255, 255, 255, 0.5) !important;
    position: relative !important;
    display: block !important;
  }

  .single-product .woocommerce-product-gallery .flex-control-thumbs li img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    opacity: 0 !important;
    cursor: pointer !important;
    border: none !important;
    padding: 0 !important;
    transform: none !important;
    box-shadow: none !important;
  }

  .single-product .woocommerce-product-gallery .flex-control-thumbs li:has(img.flex-active) {
    background: #ffffff !important;
  }

  /* Summary panel — less padding on mobile */
  .single-product .summary.entry-summary {
    padding: 18px 16px 22px !important;
  }

  /* Related products — single column */
  .single-product div.product > section.related.products > ul.products {
    grid-template-columns: 1fr !important;
  }

  .single-product div.product > section.related.products > ul.products > li.product img {
    height: 260px;
  }
}

/* ======================================
   OCULTAR SEGUNDA IMAGEN DE PRODUCTOS
   ====================================== */

/* ocultar segunda imagen SOLO en páginas de producto */

body.single-product ul.products li.product img.arauma-secondary-image{
  display:none !important;
}

/* ======================================
   EVITAR SALTOS / MOVIMIENTOS EN HOVER
   ====================================== */

.single-product div.product section.related.products ul.products li.product,
.single-product div.product section.related.products ul.products li.product:hover{

  transform:none !important;
  transition:none !important;
  box-shadow:0 8px 24px rgba(0,0,0,0.04) !important;
  border-color:rgba(14,14,14,0.06) !important;
}

/* quitar animaciones de imagen también */

.single-product div.product section.related.products ul.products li.product img{
  transition:none !important;
}

.woocommerce-breadcrumb {
	display: none;
}

