/* ==== BBS BUY BOX ==== */
/* Astra's product styles are more specific than a plain class, so the buy row
   is pinned down here with matching specificity rather than guessed at. */

.woocommerce div.product form.cart,
.woocommerce-page div.product form.cart{
  display:flex!important;flex-wrap:wrap!important;align-items:center!important;
  gap:12px!important;margin:0!important;width:100%!important;float:none!important;}

.woocommerce div.product form.cart .bbs-qty-label{
  font-family:'Instrument Sans',sans-serif;font-size:15px;font-weight:600;color:#0C0C0E;flex:0 0 auto;}

.woocommerce div.product form.cart div.quantity,
.woocommerce-page div.product form.cart div.quantity{
  display:inline-flex!important;align-items:stretch!important;
  border:1px solid #E4E4E7!important;flex:0 0 auto!important;
  margin:0!important;width:auto!important;max-width:none!important;float:none!important;}

.woocommerce div.product form.cart div.quantity input.qty,
.woocommerce-page div.product form.cart div.quantity input.qty{
  width:56px!important;min-height:54px!important;height:54px!important;
  border:0!important;box-shadow:none!important;text-align:center!important;
  font-family:'Instrument Sans',sans-serif;font-size:16px;background:#fff!important;
  padding:0!important;margin:0!important;-moz-appearance:textfield;}
.woocommerce div.product form.cart div.quantity input.qty::-webkit-outer-spin-button,
.woocommerce div.product form.cart div.quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}

/* Our stepper controls */
.woocommerce div.product form.cart div.quantity button.bbs-qty-btn,
.woocommerce-page div.product form.cart div.quantity button.bbs-qty-btn,
button.bbs-qty-btn{
  width:42px!important;min-width:42px!important;max-width:42px!important;
  min-height:54px!important;height:54px!important;
  background:#FFFFFF!important;color:#0C0C0E!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
  font-family:'Instrument Sans',sans-serif!important;font-size:17px!important;line-height:1!important;
  padding:0!important;margin:0!important;cursor:pointer;
  display:flex!important;align-items:center!important;justify-content:center!important;}
button.bbs-qty-btn:hover{background:#F4F4F5!important;color:#0C0C0E!important;}
button.bbs-qty-minus{border-right:1px solid #E4E4E7!important;}
button.bbs-qty-plus{border-left:1px solid #E4E4E7!important;}

/* Astra ships its own stepper; only ours should render */
.woocommerce div.product form.cart div.quantity .minus,
.woocommerce div.product form.cart div.quantity .plus,
.woocommerce div.product form.cart div.quantity .ast-qty-minus,
.woocommerce div.product form.cart div.quantity .ast-qty-plus{display:none!important;}

.woocommerce div.product form.cart button.single_add_to_cart_button,
.woocommerce-page div.product form.cart button.single_add_to_cart_button{
  min-height:56px!important;flex:1 1 190px!important;padding:0 26px!important;
  white-space:nowrap!important;float:none!important;margin:0!important;width:auto!important;}

a.bbs-buy-now{display:inline-flex;align-items:center;justify-content:center;
  min-height:56px;padding:0 26px;white-space:nowrap;
  font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:15px;
  background:#FFFFFF;color:#0C0C0E;border:1px solid #0C0C0E;border-radius:0;text-decoration:none;
  flex:1 1 160px;transition:background .18s,color .18s;}
a.bbs-buy-now:hover{background:#0C0C0E;color:#FFFFFF;}

/* ---- Sticky mobile buy bar ---- */
/* The bottom nav is roughly 66px plus the iOS safe area; clear it properly. */
.elementor-location-single .e-con.e-parent[data-settings*='fixed']{
  bottom:calc(66px + env(safe-area-inset-bottom))!important;}
.elementor-location-single .bbs-qty-label{display:none!important;}
.elementor-location-single .e-con[data-settings*='fixed'] form.cart{gap:10px!important;flex-wrap:nowrap!important;}
.elementor-location-single .e-con[data-settings*='fixed'] div.quantity{display:none!important;}
.elementor-location-single .e-con[data-settings*='fixed'] button.single_add_to_cart_button{
  flex:1 1 auto!important;min-height:48px!important;height:48px!important;}

@media(max-width:767px){
  /* Quantity on its own row, then two full-width actions */
  .woocommerce div.product form.cart .bbs-qty-label{order:1;flex:0 0 auto;}
  .woocommerce div.product form.cart div.quantity{order:2;flex:0 0 auto!important;}
  .woocommerce div.product form.cart button.single_add_to_cart_button{order:3;flex:1 1 100%!important;}
  a.bbs-buy-now{order:4;flex:1 1 100%;}
  .woocommerce div.product form.cart{gap:10px!important;}
}
