/* 3Grafik Product Cart Alignment v3 — simple products only.
   No visual modification to WooCommerce checkout, payment or product data.
   Uses normal DOM order and no script-driven relocation of controls. */
@media (min-width: 768px) {
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form),
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
  }
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) .quantity {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 116px !important;
    width: 116px !important;
    max-width: 116px !important;
    min-height: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: none !important;
    vertical-align: top !important;
  }
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) button.single_add_to_cart_button,
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) .single_add_to_cart_button.button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 1 220px !important;
    width: auto !important;
    max-width: none !important;
    min-width: 176px !important;
    min-height: 52px !important;
    height: 52px !important;
    line-height: 1.2 !important;
    padding: 0 22px !important;
    margin: 0 !important;
    float: none !important;
    clear: none !important;
    white-space: nowrap !important;
    border-radius: 12px !important;
    box-sizing: border-box !important;
    background-color: #e64d87 !important;
    border-color: #e64d87 !important;
    color: #fff !important;
    font-weight: 700 !important;
    text-align: center !important;
  }
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) button.single_add_to_cart_button:hover {
    background-color: #d93c78 !important;
    border-color: #d93c78 !important;
  }
  /* Full-width optional payment/extras remain below the main row. */
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) > .ppc-button-wrapper,
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) > .wc-stripe-product-checkout-container,
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) > .woocommerce-variation-add-to-cart-disabled {
    flex: 0 0 100% !important;
    width: 100% !important;
  }
}
/* Compact mobile layout without overflow; quantity and CTA can stack naturally. */
@media (max-width: 767px) {
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
  }
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) .quantity {
    margin: 0 !important;
    float: none !important;
    min-height: 48px !important;
  }
  body.single-product.woocommerce div.product .summary form.cart:not(.variations_form):not(.grouped_form) button.single_add_to_cart_button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 52px !important;
    margin: 0 !important;
    float: none !important;
    clear: none !important;
    border-radius: 12px !important;
    background-color: #e64d87 !important;
    border-color: #e64d87 !important;
    color: #fff !important;
  }
}
