/* LAOGANMA — página de producto individual.
   Rediseño editorial de cero: vitrina burgundy con frasco flotante, info column
   tipográfica, specs tabulares, historia dividida y "otros sabores" en cards.
   Depende de los tokens de theme.css (--lg-serif, --lg-burgundy, etc.). */

/* ═══════════════════════════════════════════
   MAIN CONTAINER
   ═══════════════════════════════════════════ */

.lg-shop-main{
  background:var(--lg-cream);
  min-height:60vh;
  padding-block:0 96px;
}

.lg-product{
  position:relative;
}
.lg-product__wrap{
  padding-block:32px 24px;
}

/* WooCommerce clearfix — evita que rompa layouts como grid item */
.lg-product::before,
.lg-product::after{content:none;display:none}
.lg-shop-main::before,
.lg-shop-main::after{content:none;display:none}

/* ═══════════════════════════════════════════
   BREADCRUMB — pequeño, discreto, editorial
   ═══════════════════════════════════════════ */

.lg-product__wrap > .woocommerce-breadcrumb{
  font-family:var(--lg-sans);
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(34,19,16,.42);
  margin:0 0 40px;
  font-weight:500;
}
.lg-product__wrap > .woocommerce-breadcrumb a{
  color:inherit;
  text-decoration:none;
  transition:color .18s var(--lg-ease);
}
.lg-product__wrap > .woocommerce-breadcrumb a:hover{
  color:var(--lg-burgundy);
}

/* ═══════════════════════════════════════════
   HERO GRID — 2 columnas asymmetric
   ═══════════════════════════════════════════ */

.lg-product__grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  gap:56px;
  align-items:start;
  margin-bottom:96px;
}

@media (max-width:900px){
  .lg-product__grid{
    grid-template-columns:1fr;
    gap:32px;
    margin-bottom:64px;
  }
}

/* ═══════════════════════════════════════════
   VITRINA — panel burgundy con el frasco
   ═══════════════════════════════════════════ */

.lg-product__vitrine{
  position:relative;
  aspect-ratio:1 / 1.05;
  border-radius:32px;
  overflow:hidden;
  isolation:isolate;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:48px 32px;
  box-shadow:0 24px 60px -20px rgba(86,24,15,.35), 0 1px 0 rgba(255,255,255,.06) inset;
}

/* Gradiente radial por sabor — hereda del hero (--lg-scene--classic/beans/chicken) */
.lg-product__vitrine.lg-scene--classic{
  background:radial-gradient(circle at 32% 24%, #C13A1B 0%, #8A1C0E 42%, #56180F 74%, #2A100B 100%);
}
.lg-product__vitrine.lg-scene--beans{
  background:radial-gradient(circle at 32% 24%, #C47D2D 0%, #8A4114 42%, #5A2A0F 74%, #2A140B 100%);
}
.lg-product__vitrine.lg-scene--chicken{
  background:radial-gradient(circle at 32% 24%, #C13A45 0%, #8A1C25 42%, #5A1418 74%, #2A0B0D 100%);
}

/* Halo de luz superior — sutil pero da profundidad */
.lg-product__vitrine-halo{
  position:absolute;
  inset:-40% -40% auto auto;
  width:80%;
  aspect-ratio:1;
  background:radial-gradient(circle, rgba(255,220,180,.16) 0%, transparent 60%);
  filter:blur(20px);
  z-index:1;
  pointer-events:none;
}

/* Chino gigante como watermark detrás del frasco */
.lg-product__vitrine-han{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:var(--lg-serif);
  font-size:clamp(4rem, 12vw, 9rem);
  font-weight:600;
  color:rgba(255,255,255,.045);
  line-height:.9;
  letter-spacing:-.02em;
  text-align:center;
  padding:20px;
  z-index:1;
  pointer-events:none;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  max-height:100%;
  overflow:hidden;
}

/* El frasco */
.lg-product__jar{
  position:relative;
  z-index:2;
  max-height:100%;
  max-width:80%;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 25px 30px rgba(0,0,0,.35));
}

/* Weight tag en la esquina inferior */
.lg-product__vitrine-weight{
  position:absolute;
  right:24px;
  bottom:24px;
  z-index:3;
  font-family:var(--lg-sans);
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:600;
  color:rgba(255,255,255,.72);
  padding:8px 14px;
  background:rgba(0,0,0,.22);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--lg-radius-pill);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

/* ═══════════════════════════════════════════
   INFO COLUMN — títulos, precio, cart, specs
   ═══════════════════════════════════════════ */

.lg-product__info{
  padding-top:8px;
}

@media (min-width:1100px){
  .lg-product__info{
    position:sticky;
    top:96px;
  }
}

.lg-product__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--lg-sans);
  font-size:.75rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:600;
  color:var(--lg-burgundy);
  margin:0 0 16px;
}
.lg-product__eyebrow-dot{
  display:inline-block;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--lg-burgundy);
}

.lg-product__title{
  font-family:var(--lg-serif);
  font-weight:600;
  font-size:clamp(2rem, 3.6vw, 3.1rem);
  line-height:1.05;
  letter-spacing:-.015em;
  color:var(--lg-ink);
  margin:0 0 20px;
  text-wrap:balance;
}

.lg-product__lede{
  font-family:var(--lg-sans);
  font-size:1.08rem;
  line-height:1.55;
  color:rgba(34,19,16,.75);
  margin:0 0 28px;
  max-width:52ch;
}
.lg-product__lede p{margin:0}

/* Precio */
.lg-product__price{
  display:flex;
  align-items:baseline;
  gap:12px;
  margin:0 0 6px;
  font-family:var(--lg-sans);
  font-size:2rem;
  font-weight:600;
  color:var(--lg-ink);
  font-variant-numeric:tabular-nums;
  letter-spacing:-.01em;
}
.lg-product__price bdi{color:inherit}
.lg-product__price .woocommerce-Price-currencySymbol{
  font-size:.55em;
  font-weight:500;
  color:rgba(34,19,16,.5);
  align-self:center;
  margin-right:2px;
}
.lg-product__price ins,
.lg-product__price del{background:none;text-decoration:none}
.lg-product__price del{
  font-size:1rem;
  color:rgba(34,19,16,.4);
  text-decoration:line-through;
}

/* Stock */
.lg-product__stock{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--lg-sans);
  font-size:.82rem;
  color:rgba(34,19,16,.55);
  margin:0 0 24px;
  font-weight:500;
}
.lg-product__stock-pip{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#4a9b5a;
  box-shadow:0 0 0 3px rgba(74,155,90,.16);
}
.lg-product__stock--out{color:var(--lg-cta)}
.lg-product__stock--out .lg-product__stock-pip{display:none}

/* Cart form: cantidad + botón */
.lg-product__cart{
  margin:0 0 40px;
}
.lg-product__cart form.cart{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin:0;
}

.lg-product__cart .quantity{
  display:inline-flex;
  align-items:stretch;
  border:1px solid rgba(34,19,16,.14);
  border-radius:var(--lg-radius-pill);
  background:var(--lg-white);
  overflow:hidden;
}
.lg-product__cart .quantity input.qty{
  width:68px;
  height:52px;
  border:0;
  background:transparent;
  text-align:center;
  font-family:var(--lg-sans);
  font-size:1rem;
  font-weight:600;
  color:var(--lg-ink);
  padding:0;
  outline:none;
  font-variant-numeric:tabular-nums;
  -moz-appearance:textfield;
}
.lg-product__cart .quantity input.qty::-webkit-outer-spin-button,
.lg-product__cart .quantity input.qty::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}

/* Botón "Añadir al carrito" — coral con sombra CTA */
.lg-product__cart button.single_add_to_cart_button,
.lg-product__cart .single_add_to_cart_button.button,
.lg-product__cart form.cart button.single_add_to_cart_button,
.lg-product__cart form.cart button.single_add_to_cart_button.button,
.lg-product__cart form.cart button.single_add_to_cart_button.button.alt{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:10px;
  height:52px;
  padding:0 32px !important;
  border:0 !important;
  border-radius:var(--lg-radius-pill) !important;
  background:var(--lg-cta) !important;
  background-color:var(--lg-cta) !important;
  background-image:none !important;
  color:var(--lg-white) !important;
  font-family:var(--lg-sans) !important;
  font-size:.95rem !important;
  font-weight:600 !important;
  letter-spacing:.03em !important;
  cursor:pointer;
  transition:transform .18s var(--lg-ease), background .18s var(--lg-ease), box-shadow .18s var(--lg-ease);
  box-shadow:0 6px 18px -4px rgba(236,55,19,.45) !important;
  text-transform:none !important;
  text-shadow:none !important;
}
.lg-product__cart button.single_add_to_cart_button:hover,
.lg-product__cart .single_add_to_cart_button.button:hover{
  background:#d92a0a !important;
  background-color:#d92a0a !important;
  transform:translateY(-1px);
  box-shadow:0 10px 24px -6px rgba(236,55,19,.55) !important;
}
.lg-product__cart button.single_add_to_cart_button:active{
  transform:translateY(0);
}

/* WooCommerce simple.php emite su propio "39 disponibles" antes del form.
   Como ya lo mostramos arriba con branding, ocultamos el default. */
.lg-product__cart .stock,
.lg-product__cart p.stock,
.lg-product__info > .stock{display:none !important}

/* ═══════════════════════════════════════════
   SPECS — tabla tipográfica editorial
   ═══════════════════════════════════════════ */

.lg-product__specs{
  display:grid;
  gap:0;
  margin:0 0 32px;
  padding:24px 0 0;
  border-top:1px solid rgba(34,19,16,.1);
}
.lg-product__spec{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:20px;
  align-items:baseline;
  padding:14px 0;
  border-bottom:1px dashed rgba(34,19,16,.1);
  margin:0;
}
.lg-product__spec:last-child{border-bottom:0}
.lg-product__spec dt{
  font-family:var(--lg-sans);
  font-size:.78rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(34,19,16,.5);
  font-weight:500;
  margin:0;
}
.lg-product__spec dd{
  font-family:var(--lg-sans);
  font-size:.98rem;
  font-weight:500;
  color:var(--lg-ink);
  text-align:right;
  margin:0;
  font-variant-numeric:tabular-nums;
  word-break:break-word;
}
.lg-product__spec--han{
  font-family:var(--lg-serif) !important;
  font-size:1.15rem !important;
  letter-spacing:.02em;
  color:var(--lg-cocoa) !important;
  font-weight:500;
}

/* Trust strip */
.lg-product__trust{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  flex-wrap:wrap;
  font-family:var(--lg-sans);
  font-size:.78rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-weight:500;
  color:rgba(34,19,16,.5);
}
.lg-product__trust i{
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--lg-burgundy);
  display:inline-block;
}

/* ═══════════════════════════════════════════
   HISTORIA — descripción larga editorial 2-col
   ═══════════════════════════════════════════ */

.lg-product__story{
  display:grid;
  grid-template-columns:200px minmax(0,1fr);
  gap:56px;
  align-items:start;
  padding:56px 0;
  border-top:1px solid rgba(34,19,16,.1);
  border-bottom:1px solid rgba(34,19,16,.1);
  margin-bottom:80px;
}

@media (max-width:900px){
  .lg-product__story{
    grid-template-columns:1fr;
    gap:16px;
    padding:40px 0;
    margin-bottom:56px;
  }
}

.lg-product__story-eyebrow{
  font-family:var(--lg-serif);
  font-size:1.4rem;
  font-weight:600;
  color:var(--lg-burgundy);
  letter-spacing:-.01em;
  line-height:1;
  padding-top:6px;
}
.lg-product__story-body{
  font-family:var(--lg-sans);
  font-size:1.08rem;
  line-height:1.7;
  color:rgba(34,19,16,.85);
  max-width:60ch;
}
.lg-product__story-body p{margin:0 0 1em}
.lg-product__story-body p:last-child{margin-bottom:0}

/* ═══════════════════════════════════════════
   OTROS SABORES — cards con vitrina mini
   ═══════════════════════════════════════════ */

.lg-related{
  padding-top:8px;
}
.lg-related__head{
  margin-bottom:36px;
}
.lg-related__eyebrow{
  display:block;
  font-family:var(--lg-sans);
  font-size:.75rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:600;
  color:var(--lg-burgundy);
  margin:0 0 10px;
}
.lg-related__title{
  font-family:var(--lg-serif);
  font-size:clamp(1.6rem, 2.4vw, 2.1rem);
  font-weight:600;
  color:var(--lg-ink);
  letter-spacing:-.01em;
  line-height:1.1;
  margin:0;
}

.lg-related__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:24px;
}

.lg-related__card{
  display:block;
  color:inherit;
  text-decoration:none;
  border-radius:20px;
  background:var(--lg-white);
  overflow:hidden;
  border:1px solid rgba(34,19,16,.06);
  transition:transform .25s var(--lg-ease), box-shadow .25s var(--lg-ease), border-color .25s var(--lg-ease);
}
.lg-related__card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 48px -18px rgba(34,19,16,.22);
  border-color:rgba(34,19,16,.12);
}

.lg-related__vitrine{
  position:relative;
  aspect-ratio:1 / 0.95;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  isolation:isolate;
}
.lg-related__vitrine.lg-scene--classic{
  background:radial-gradient(circle at 32% 24%, #C13A1B 0%, #8A1C0E 42%, #56180F 74%, #2A100B 100%);
}
.lg-related__vitrine.lg-scene--beans{
  background:radial-gradient(circle at 32% 24%, #C47D2D 0%, #8A4114 42%, #5A2A0F 74%, #2A140B 100%);
}
.lg-related__vitrine.lg-scene--chicken{
  background:radial-gradient(circle at 32% 24%, #C13A45 0%, #8A1C25 42%, #5A1418 74%, #2A0B0D 100%);
}
.lg-related__vitrine-halo{
  position:absolute;
  inset:-30% -30% auto auto;
  width:70%;
  aspect-ratio:1;
  background:radial-gradient(circle, rgba(255,220,180,.14) 0%, transparent 60%);
  filter:blur(16px);
  z-index:1;
  pointer-events:none;
}
.lg-related__vitrine-han{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:var(--lg-serif);
  font-size:clamp(2.2rem, 5vw, 3.4rem);
  font-weight:600;
  color:rgba(255,255,255,.06);
  line-height:.9;
  letter-spacing:-.02em;
  padding:16px;
  z-index:1;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  max-height:100%;
  overflow:hidden;
}
.lg-related__jar{
  position:relative;
  z-index:2;
  max-height:100%;
  max-width:78%;
  object-fit:contain;
  filter:drop-shadow(0 14px 20px rgba(0,0,0,.32));
  transition:transform .35s var(--lg-ease);
}
.lg-related__card:hover .lg-related__jar{
  transform:scale(1.04);
}

.lg-related__meta{
  padding:22px 24px 24px;
}
.lg-related__eyebrow-sm{
  display:block;
  font-family:var(--lg-sans);
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:600;
  color:var(--lg-burgundy);
  margin:0 0 8px;
}
.lg-related__name{
  font-family:var(--lg-serif);
  font-size:1.2rem;
  font-weight:600;
  line-height:1.15;
  color:var(--lg-ink);
  margin:0 0 16px;
  letter-spacing:-.005em;
  text-wrap:balance;
}
.lg-related__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.lg-related__price{
  font-family:var(--lg-sans);
  font-size:1.1rem;
  font-weight:600;
  color:var(--lg-ink);
  font-variant-numeric:tabular-nums;
}
.lg-related__price bdi{color:inherit}
.lg-related__cta{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-family:var(--lg-sans);
  font-size:.85rem;
  font-weight:600;
  letter-spacing:.03em;
  color:var(--lg-burgundy);
  transition:gap .2s var(--lg-ease);
}
.lg-related__card:hover .lg-related__cta{
  gap:10px;
}

/* ═══════════════════════════════════════════
   HIDE TABS / DEFAULT WOO OUTPUT
   ═══════════════════════════════════════════ */

body.single-product .woocommerce-tabs,
body.single-product .related.products,
body.single-product .up-sells,
body.single-product .woocommerce-notices-wrapper:empty,
body.single-product #reviews{
  display:none;
}

/* Solo el sistema de tabs default. La descripción ya va en lg-product__story */
body.single-product .lg-product .woocommerce-tabs{display:none !important}
