/* ==========================================================================
   Ficha de artículo del catálogo.
   El tema no carga los estilos de WooCommerce (los cursos se maquetan con
   Elementor), así que el marcado estándar se viste aquí con los tokens BEC.
   ========================================================================== */

.bec-articulo {
  background: var(--bec-black);
  color: #fff;
  padding-block: 48px 72px;
}

.bec-articulo a {
  color: inherit;
}

/* ------------------------------------------------------------ MIGA */

.bec-articulo .woocommerce-breadcrumb {
  margin: 0 0 28px;
  font-size: 14px;
  color: var(--bec-mute);
}

.bec-articulo .woocommerce-breadcrumb a:hover {
  color: #fff;
}

/* --------------------------------------------------------- AVISOS */

.bec-articulo .woocommerce-notices-wrapper .woocommerce-message,
.bec-articulo .woocommerce-notices-wrapper .woocommerce-info,
.bec-articulo .woocommerce-notices-wrapper .woocommerce-error {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 0 0 24px;
  padding: 16px 20px;
  list-style: none;
  background: var(--bec-card);
  border-left: 4px solid var(--bec-red);
  border-radius: var(--bec-radius);
  color: #fff;
}

/* -------------------------------------------------------- CABECERA */

.bec-articulo div.product {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px;
  align-items: start;
}

@media (max-width: 900px) {
  .bec-articulo div.product {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }
}

/* Galería */

.bec-articulo .woocommerce-product-gallery {
  margin: 0;
  border-radius: var(--bec-radius);
  overflow: hidden;
  background: var(--bec-card);
}

.bec-articulo .woocommerce-product-gallery__wrapper {
  margin: 0;
}

.bec-articulo .woocommerce-product-gallery img {
  width: 100%;
  border-radius: var(--bec-radius);
}

.bec-articulo .woocommerce-product-gallery__trigger {
  display: none;
}

/* Resumen */

.bec-articulo .summary {
  margin: 0;
}

.bec-articulo .product_title {
  margin: 0 0 16px;
  font-family: Inter, sans-serif;
  font-size: clamp(30px, 3.2vw, 42px);
  font-weight: 700;
  line-height: 1.1;
  color: #fff;
}

.bec-articulo .summary p.price {
  margin: 0;
  font-size: 34px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--bec-red);
}

.bec-articulo .summary p.price del {
  opacity: 0.5;
  font-size: 22px;
  font-weight: 500;
}

.bec-articulo .summary p.price ins {
  text-decoration: none;
}

.bec-articulo .bec-precio-alumni {
  margin: 6px 0 0;
  font-size: 16px;
  color: var(--bec-mute);
}

.bec-articulo .bec-precio-alumni .woocommerce-Price-amount {
  color: #fff;
  font-weight: 600;
}

.bec-articulo .woocommerce-product-details__short-description {
  margin: 24px 0 0;
  color: #d5d5d5;
}

.bec-articulo .bec-dimensiones {
  margin: 12px 0 0;
  font-size: 15px;
  color: var(--bec-mute);
}

/* ---------------------------------------------------- AÑADIR AL CARRITO */

.bec-articulo form.cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 32px 0 0;
}

.bec-articulo form.cart .quantity input.qty {
  width: 84px;
  height: 48px;
  padding: 0 12px;
  background: var(--bec-card);
  border: 1px solid #2a2a2a;
  border-radius: var(--bec-radius);
  color: #fff;
  font-family: Inter, sans-serif;
  font-size: 16px;
  text-align: center;
}

.bec-articulo form.cart .quantity input.qty:focus {
  outline: none;
  border-color: var(--bec-red);
}

.bec-articulo button.single_add_to_cart_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 32px;
  border: 0;
  border-radius: var(--bec-radius);
  background: var(--bec-red);
  color: #fff;
  font-family: Inter, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.2s;
}

.bec-articulo button.single_add_to_cart_button:hover {
  background: #cc332d;
}

/* ------------------------------------------------------------- META */

.bec-articulo .product_meta {
  margin: 28px 0 0;
  padding: 20px 0 0;
  border-top: 1px solid #232323;
  font-size: 14px;
  color: var(--bec-mute);
}

.bec-articulo .product_meta > span {
  display: block;
  margin-bottom: 6px;
}

.bec-articulo .product_meta a:hover {
  color: #fff;
}

/* ------------------------------------------------------------ PESTAÑAS */

.bec-articulo .woocommerce-tabs {
  grid-column: 1 / -1;
  margin: 64px 0 0;
}

.bec-articulo .woocommerce-tabs ul.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
  border-bottom: 1px solid #232323;
}

.bec-articulo .woocommerce-tabs ul.tabs li {
  margin: 0;
}

.bec-articulo .woocommerce-tabs ul.tabs li a {
  display: block;
  padding: 12px 20px;
  border-radius: var(--bec-radius) var(--bec-radius) 0 0;
  font-weight: 500;
  color: var(--bec-mute);
}

.bec-articulo .woocommerce-tabs ul.tabs li.active a,
.bec-articulo .woocommerce-tabs ul.tabs li a:hover {
  background: var(--bec-card);
  color: #fff;
}

.bec-articulo .woocommerce-Tabs-panel {
  color: #d5d5d5;
}

/* La pestaña ya rotula el panel; el encabezado interno sobra. */
.bec-articulo .woocommerce-Tabs-panel > h2 {
  display: none;
}

.bec-articulo .woocommerce-Tabs-panel ul {
  margin: 0;
  padding-left: 20px;
}

.bec-articulo .woocommerce-Tabs-panel li {
  margin-bottom: 8px;
}

/* ------------------------------------------------------- RELACIONADOS */

.bec-articulo .related.products,
.bec-articulo .up-sells.products {
  grid-column: 1 / -1;
  margin: 72px 0 0;
}

.bec-articulo .related.products > h2,
.bec-articulo .up-sells.products > h2 {
  margin: 0 0 28px;
  font-family: Inter, sans-serif;
  font-size: clamp(24px, 2.4vw, 32px);
  font-weight: 700;
  color: #fff;
}

.bec-articulo ul.products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (max-width: 1024px) {
  .bec-articulo ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .bec-articulo ul.products {
    grid-template-columns: minmax(0, 1fr);
  }
}

.bec-articulo ul.products li.product {
  display: flex;
  flex-direction: column;
  margin: 0;
  background: var(--bec-card);
  border-radius: var(--bec-radius);
  overflow: hidden;
  transition: transform 0.2s;
}

.bec-articulo ul.products li.product:hover {
  transform: translateY(-4px);
}

.bec-articulo ul.products li.product > a {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.bec-articulo ul.products li.product img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.bec-articulo ul.products li.product .woocommerce-loop-product__title {
  margin: 0;
  padding: 18px 18px 0;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.3;
  color: #fff;
}

.bec-articulo ul.products li.product .price {
  display: block;
  padding: 8px 18px 18px;
  font-size: 18px;
  font-weight: 700;
  color: var(--bec-red);
}

.bec-articulo ul.products li.product .price del {
  opacity: 0.5;
  font-size: 15px;
  font-weight: 500;
}

.bec-articulo ul.products li.product .price ins {
  text-decoration: none;
}

/* El botón de la tarjeta se oculta: la compra se hace desde la ficha. */
.bec-articulo ul.products li.product .add_to_cart_button,
.bec-articulo ul.products li.product .added_to_cart {
  display: none;
}

.bec-articulo ul.products li.product .onsale {
  display: none;
}
