:root{
  --gbo-gold:#b8860b;
  --gbo-olive:#4b5320;
  --gbo-cream:#faf7f0;
  --gbo-dark:#2b2b1f;
  --gbo-border:#e3ddc9;
  --gbo-save-bg:#e7f0df;
}

/* Cabecera "Selecciona tu pack y ahorra hasta un X%" */
.gbo-heading{
  text-align:center;
  font-size:15.5px;
  font-weight:600;
  color:var(--gbo-dark);
  margin:18px 0 16px;
}

.gbo-heading::before,
.gbo-heading::after{
  content:"";
  display:inline-block;
  width:34px;
  height:1px;
  background:var(--gbo-border);
  vertical-align:middle;
  margin:0 10px 3px;
}

/* Lista de packs, apilados a ancho completo */
.variable-items-wrapper.button-variable-items-wrapper{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  margin:0 0 20px !important;
  list-style:none !important;
  padding:0 !important;
}

.variable-items-wrapper.button-variable-items-wrapper .variable-item.button-variable-item{
  position:relative;
  border:1px solid var(--gbo-border) !important;
  border-radius:14px !important;
  padding:16px 18px !important;
  width:100% !important;
  height:auto !important;
  text-align:left;
  cursor:pointer;
  background:#fff !important;
  box-shadow:none !important;
  transition:all .18s ease;
}

.variable-items-wrapper.button-variable-items-wrapper .variable-item.button-variable-item:hover{
  border-color:var(--gbo-gold) !important;
}

.variable-items-wrapper.button-variable-items-wrapper .variable-item.button-variable-item.selected{
  border-color:var(--gbo-olive) !important;
  border-width:2px !important;
}

.variable-items-wrapper.button-variable-items-wrapper .variable-item-contents{
  padding:0 !important;
  margin:0 !important;
  width:100%;
}

/* Contenido de cada fila */
.gbo-row{
  display:flex;
  align-items:center;
  gap:14px;
  width:100%;
}

.gbo-row-main{
  flex:1;
  text-align:left;
  min-width:0;
}

.gbo-row-name{
  font-weight:600;
  font-size:16.5px;
  color:var(--gbo-dark);
}

.gbo-row-save{
  display:inline-block;
  margin-top:5px;
  background:var(--gbo-save-bg);
  color:var(--gbo-olive);
  font-size:12px;
  font-weight:600;
  padding:3px 10px;
  border-radius:20px;
}

.gbo-row-price{
  text-align:right;
  white-space:nowrap;
}

.gbo-row-price-top{
  font-weight:700;
  font-size:18px;
  color:var(--gbo-dark);
}

.gbo-row-regular{
  font-weight:400;
  font-size:13.5px;
  color:#a39f8d;
  text-decoration:line-through;
  margin-left:3px;
}

.gbo-row-price-sub{
  font-size:12.5px;
  color:#8a8674;
  margin-top:3px;
}

/* Badge flotante "El más vendido" */
.gbo-most-sold{
  position:absolute;
  top:-11px;
  left:50%;
  transform:translateX(-50%);
  background:var(--gbo-olive);
  color:#fff;
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.4px;
  padding:4px 12px;
  border-radius:20px;
  white-space:nowrap;
}

/* Ocultamos el "Limpiar" (no aparece en el diseño de referencia) */
a.reset_variations{
  display:none !important;
}

/* ==========================================================
   Bloque nuevo de WooCommerce "Add to Cart with Options"
   (radios en vez de <select>, usado por Elementor en home/shop)
   ========================================================== */

.wc-block-add-to-cart-with-options-variation-selector-attribute-options__pills{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  padding:0 !important;
}

.wc-block-add-to-cart-with-options-variation-selector-attribute-options__pill{
  position:relative;
  display:block !important;
  box-sizing:border-box !important;
  border:1px solid var(--gbo-border) !important;
  border-radius:14px !important;
  padding:16px 18px !important;
  width:100%;
  margin:0 !important;
  background:#fff !important;
  cursor:pointer;
  transition:all .18s ease;
  color:inherit !important;
  font-size:inherit !important;
  line-height:normal !important;
  outline:none !important;
}

.wc-block-add-to-cart-with-options-variation-selector-attribute-options__pill:hover{
  border-color:var(--gbo-gold) !important;
  background:#fff !important;
}

.wc-block-add-to-cart-with-options-variation-selector-attribute-options__pill:has(.wc-block-add-to-cart-with-options-variation-selector-attribute-options__pill-input:checked){
  border-color:var(--gbo-olive) !important;
  border-width:2px !important;
  background:#fff !important;
}

.wc-block-add-to-cart-with-options-variation-selector-attribute-options__pill:focus-within{
  outline:none !important;
}

.wc-block-add-to-cart-with-options-variation-selector-attribute-options__pill-input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  overflow:hidden;
}

.gbo-extra{
  margin-top:10px;
  font-size:13px;
  color:#555;
  line-height:1.7;
}

.gbo-extra p{
  margin:4px 0;
}

/* Botón de añadir al carrito, estilo píldora oliva */
.single_add_to_cart_button{
  background:#ffffff !important;
  color:var(--gbo-olive) !important;
  border:2px solid var(--gbo-olive) !important;
  border-radius:40px !important;
  padding:14px 28px !important;
  font-weight:600 !important;
  letter-spacing:.3px;
}

.single_add_to_cart_button:hover{
  background:var(--gbo-cream) !important;
}

@media (max-width:480px){
  .variable-items-wrapper.button-variable-items-wrapper .variable-item.button-variable-item{
    padding:13px 14px !important;
  }
  .gbo-row-name{ font-size:15.5px; }
  .gbo-row-price-top{ font-size:17px; }
}
