/**
 * Nutribiótica — Combínalo con (v9, CTA móvil bajo grid y euro fix)
 * - Header minimal + botón outline (desktop).
 * - En móvil, se oculta CUALQUIER botón en el header y se muestra uno full-width bajo el grid.
 * - Oculta “Impuestos incluidos” dentro del bloque.
 * - Asegura color del símbolo € (más específico que .entry-summary .price ...).
 */

.nutri-combo{ margin-top:22px; }

/* ===== Header ===== */
.nutri-combo__header{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:8px 12px;
  border:1px solid #e6edf4; border-radius:12px; background:#fff;
  box-shadow:0 6px 16px rgba(11,53,87,.06);
  margin-bottom:12px;
}
.nutri-combo__title{
  margin:0; color:#0f3f37; font-weight:900; font-size:1.15rem;
  line-height:1.15; letter-spacing:.01em; padding-left:12px; position:relative;
}
.nutri-combo__title::before{
  content:""; position:absolute; left:0; top:0.15em; bottom:0.15em; width:4px;
  border-radius:4px;background: linear-gradient( 45deg, var(--gradient-color-1, #54A89C), var(--gradient-color-2, #3B8278), var(--gradient-color-1, #54A89C) );
}

/* ===== CTA outline ===== */
.nutri-combo .nutri-combo__all{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:10px 16px; border-radius:9999px;
 border: 1px solid rgba(86, 170, 157, .35);
  background: #56AA9D;
  font-weight:600; cursor:pointer; white-space:nowrap;
  transition:transform .08s ease, box-shadow .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
  box-shadow:0 6px 16px rgba(11,53,87,.08);
}
.nutri-combo .nutri-combo__all:hover{
  transform:translateY(-1px);
  background:#56AA9D; color:#fff; 
  box-shadow:0 12px 26px rgba(11,53,87,.22);
}
.nutri-combo .nutri-combo__all.is-disabled{
  opacity:.5; cursor:not-allowed; background:#f5f8fb; color:black; border-color:#dbe6f1; box-shadow:none;
}

/* ===== CTA móvil bajo el grid ===== */
.nutri-combo__mobile-cta{ display:none; }

/* ===== Grid separación ===== */
.nutri-combo-grid{ margin-top:8px; }

/* ===== Responsive: ocultar CTA del header en móvil, mostrar CTA inferior ===== */
@media (max-width: 768px){
  .nutri-combo__header .nutri-combo__all{ display:none !important; }
  .nutri-combo__mobile-cta{ display:block; margin-top:12px; }
  .nutri-combo__mobile-cta .nutri-combo__all{ width:100%; }
}

/* ===== Precio: ocultar “Impuestos incluidos” solo aquí ===== */
.nutri-combo .nutri-product-card .price .woocommerce-price-suffix,
.nutri-combo .nutri-product-card .price .tax_label,
.nutri-combo .nutri-product-card .price small{ display:none !important; }

/* ===== Euro fix con mayor especificidad ===== */
.entry-summary .nutri-combo .price .woocommerce-Price-currencySymbol,
.entry-summary .nutri-combo .price .woocommerce-Price-amount bdi,
.entry-summary .nutri-combo .price .woocommerce-Price-amount .woocommerce-Price-currencySymbol{
  color:#0b3557 !important;
  opacity:1 !important;
}

/* Alineado fino del símbolo € */
.nutri-combo .nutri-product-card .price .woocommerce-Price-amount,
.nutri-combo .nutri-product-card .price .woocommerce-Price-amount bdi{
  display:inline-flex; align-items:baseline; gap:.08em;
}
.nutri-combo .nutri-product-card .price .woocommerce-Price-currencySymbol{
  transform:translateY(.02em);
}

/* ===================================================== */
/* HScroll — móvil                                       */
/* ===================================================== */
@media (max-width: 768px){
  .nutri-combo.is-hscroll .nutri-combo__hs{
    overflow-x:auto; overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding-bottom:6px;                 /* sin padding lateral */
    scroll-padding-left:0;
  }
  .nutri-combo.is-hscroll .nutri-combo__hs::-webkit-scrollbar{ display:none; }

  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-grid{
    display:flex !important;            /* sobreescribe grid solo aquí */
    gap:16px;
    scroll-snap-type:x mandatory;
  }

  /* Espaciadores invisibles para que no se corte el 1º ni el último */
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-grid::before,
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-grid::after{
    content:""; flex:0 0 12px;
  }

  /* 1,5 tarjetas visibles */
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-card{
    flex:0 0 auto;
    width: calc((100% - 16px) / 1.5);
    scroll-snap-align:start;
  }

  /* Botón overlay más compacto */
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-card .nutri-addtocart--overlay{
    padding:10px 12px; min-height:40px; gap:8px; border-width:2px;
  }
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-card .nutri-addtocart--overlay .label{
    font-size:.9rem; letter-spacing:.1px;
  }
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-card .nutri-addtocart--overlay .icon-cart svg{
    width:20px; height:20px;
  }

  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-card:hover{
    transform:translateY(-2px);
    box-shadow:0 6px 16px rgba(11,53,87,.08);
  }
}

/* ===================================================== */
/* HScroll — TABLET (tarjetas grandes, ~1.2 visibles)    */
/* ===================================================== */
@media (min-width: 769px) and (max-width: 1024px){
  .nutri-combo.is-hscroll .nutri-combo__hs{
    overflow-x:auto; overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding-bottom:8px;
    touch-action: pan-x;
  }
  .nutri-combo.is-hscroll .nutri-combo__hs::-webkit-scrollbar{ display:none; }

  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-grid{
    display:flex !important;
    gap:16px;
    scroll-snap-type:x mandatory;
  }
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-grid::before,
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-grid::after{
    content:""; flex:0 0 12px;
  }

  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-card{
    flex:0 0 auto;
    width: calc((100% - 16px) / 1.2);   /* MUY grandes */
    scroll-snap-align:start;
  }
}

/* ===================================================== */
/* HScroll — DESKTOP estrecho (~1.4 visibles)            */
/* ===================================================== */
@media (min-width: 1025px) and (max-width: 1400px){
  .nutri-combo.is-hscroll .nutri-combo__hs{
    overflow-x:auto; overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding-bottom:8px;
    touch-action: pan-x;
  }
  .nutri-combo.is-hscroll .nutri-combo__hs::-webkit-scrollbar{ display:none; }

  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-grid{
    display:flex !important;
    gap:16px;
    scroll-snap-type:x mandatory;
  }
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-grid::before,
  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-grid::after{
    content:""; flex:0 0 12px;
  }

  .nutri-combo.is-hscroll .nutri-combo__hs .nutri-product-card{
    flex:0 0 auto;
    width: calc((100% - 16px) / 1.4);
    scroll-snap-align:start;
  }
}
