/* ═══════════════════════════════════════════════════════════
   Zona Free Shop — Pantalla Producto
   Depende de zona-base.css
   ═══════════════════════════════════════════════════════════ */

.pd-shell { min-height: 100vh; display: flex; flex-direction: column; }

/* ── Main product info ── */
.p-main {
  flex: 1; padding: 48px 24px 56px; max-width: 640px; margin: 0 auto; width: 100%;
}

/* Hero image */
.p-hero-img {
  width: 100%; max-width: 320px; aspect-ratio: 1/1; margin: 0 auto 32px;
  border-radius: 16px;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Outfit', sans-serif;
  font-weight: 800; font-size: 28px; letter-spacing: 0.08em;
  overflow: hidden;
}
.p-hero-img:not(:has(img)) {
  background: var(--gray-100);
  color: var(--gray-500);
}
.p-hero-img img {
  width: 100%; height: 100%; object-fit: contain; object-position: center;
  display: block; border-radius: 16px;
}

/* Category chip */
.p-cat {
  font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.14em;
  color: var(--navy); text-transform: uppercase; margin-bottom: 10px; display: inline-block;
  background: var(--teal-dim); padding: 6px 12px; border-radius: 6px; font-weight: 600;
  text-decoration: none; cursor: pointer; transition: background 0.2s;
}
.p-cat:hover { background: rgba(230,253,49,0.25); }

/* Title & description */
.p-title {
  font-family: 'Outfit', sans-serif; font-weight: 800;
  font-size: clamp(24px, 4vw, 32px); color: var(--navy); line-height: 1.2; margin-bottom: 14px;
}
.p-desc { font-size: 15px; color: var(--gray-500); line-height: 1.7; margin-bottom: 20px; }
.p-desc p { margin-bottom: 6px; }

/* Prices */
.p-prices { margin-bottom: 24px; }
.p-price { font-family: 'JetBrains Mono', monospace; font-size: 20px; color: var(--navy); }
.p-price-unit { font-size: 12px; color: var(--gray-400); margin-left: 4px; }
.p-price-box { font-family: 'JetBrains Mono', monospace; font-size: 12px; color: var(--gray-500); margin-top: 6px; }

/* WhatsApp CTA */
.p-wa {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 14px 28px; border-radius: 9px; border: none;
  background: var(--wa); color: #fff;
  font-family: 'Barlow Condensed', sans-serif; font-weight: 700;
  font-size: 16px; letter-spacing: 0.06em;
  cursor: pointer; transition: background 0.2s;
}
.p-wa:hover { background: var(--wa-d); }
.p-wa svg { width: 18px; height: 18px; fill: #fff; flex-shrink: 0; }

/* Technical sheet button */
.p-sheet-btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 10px 20px; border-radius: 9px;
  border: 1.5px solid var(--gray-200); background: none;
  color: var(--navy); font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700; font-size: 14px; letter-spacing: 0.06em;
  cursor: pointer; transition: all 0.2s; margin-left: 12px;
}
.p-sheet-btn:hover { border-color: var(--navy); background: var(--cream); }

/* ── Related products carousel ── */
.featured-carousel-wrap {
  padding: 56px 52px;
  background: linear-gradient(135deg, var(--cream) 0%, var(--gray-100) 100%);
  border-bottom: 1px solid var(--gray-200);
}
.featured-carousel-wrap .sec-lbl { color: var(--purple); }
.featured-carousel-wrap .sec-title { color: var(--navy); }
.featured-carousel-wrap .sec-body { color: var(--gray-500); margin-bottom: 24px; }

/* ── CTA section ── */
.pd-cta {
  padding: 72px 40px 80px;
  background: var(--navy);
  text-align: center;
  position: relative;
  overflow: hidden;
}
.pd-cta::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse 70% 70% at 50% 50%, rgba(230,253,49,0.1), transparent);
}
.pd-cta .cta-title { position: relative; }
.pd-cta .cta-sub { position: relative; }
.pd-cta .cta-btns { position: relative; }


@media (max-width: 960px) {
  .p-main { padding: 32px 18px 40px; }
  .featured-carousel-wrap { padding: 40px 20px; }
  .pd-cta { padding: 48px 20px 56px; }
}
