/* Scoped WooCommerce adjustments for Zunzo single product layout */
.single-product .woocommerce-zunzo-add-to-cart form.cart {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.single-product .woocommerce-zunzo-add-to-cart .quantity {
    margin: 0;
}

.single-product .woocommerce-zunzo-add-to-cart .qty {
    height: 46px;
    border: 1px solid #d9d9d9;
    border-radius: 999px;
    padding: 0 14px;
    width: 88px;
}

.single-product .woocommerce-zunzo-add-to-cart .single_add_to_cart_button,
.single-product .woocommerce-zunzo-add-to-cart .single_add_to_cart_button.alt {
    border: 0;
    border-radius: 999px;
    padding: 12px 22px;
    background: #c3e92d;
    color: #121212;
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.single-product .woocommerce-tabs {
    margin-top: 28px;
}

.single-product .related.products {
    margin-top: 36px;
}

.single-product .woocommerce-product-gallery {
    width: 100% !important;
    float: none !important;
}

.single-product div.product div.summary {
    width: 100% !important;
    float: none !important;
}


.single-product .breadcrumbs.style-shop-detail {
    margin-bottom: 22px;
}

.single-product .breadcrumbs.style-shop-detail .woocommerce-breadcrumb {
    color: #121212;
    font-size: 15px;
    line-height: 1.4;
}

.single-product .breadcrumbs.style-shop-detail .woocommerce-breadcrumb a,
.single-product .breadcrumbs.style-shop-detail .woocommerce-breadcrumb,
.single-product .breadcrumbs.style-shop-detail .woocommerce-breadcrumb .breadcrumb-separator {
    color: #121212 !important;
}

.single-product .breadcrumbs.style-shop-detail .woocommerce-breadcrumb a:hover {
    color: #92AF22 !important;
}


.single-product .tf-spacing-2 {
    padding-top: 36px !important;
}

.single-product .tf-main-product {
    margin-top: 0 !important;
}

.single-product .themeflat-container > .row:first-child {
    margin-top: 0 !important;
}

/* Match template qty + add-to-cart block on single product */
.single-product .woocommerce-zunzo-add-to-cart form.cart {
    display: block;
    margin: 0;
}

.single-product .woocommerce-zunzo-add-to-cart .text-title {
    margin-bottom: 12px;
}

.single-product .woocommerce-zunzo-add-to-cart .tf-product-info-quantity {
    display: flex;
    gap: 12px;
    margin-bottom: 20px;
    align-items: stretch;
}

.single-product .woocommerce-zunzo-add-to-cart .wg-quantity {
    width: 220px;
    height: 52px;
    display: flex;
    justify-content: space-between;
    border: 1px solid rgba(233, 233, 233, 1);
    background-color: rgba(247, 247, 247, 1);
    border-radius: 6px;
    overflow: hidden;
    flex: 0 0 220px;
}

.single-product .woocommerce-zunzo-add-to-cart .wg-quantity .btn-quantity {
    width: 38px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    cursor: pointer;
    user-select: none;
    transition: all 0.3s ease-in-out;
}

.single-product .woocommerce-zunzo-add-to-cart input.quantity-input.qty {
    width: 51px;
    height: 100%;
    padding: 0;
    margin: 0;
    color: rgba(18, 18, 18, 1);
    background-color: transparent;
    border: 0;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    line-height: 26px;
    border-radius: 0;
    appearance: textfield;
    -moz-appearance: textfield;
}

.single-product .woocommerce-zunzo-add-to-cart input.quantity-input.qty::-webkit-outer-spin-button,
.single-product .woocommerce-zunzo-add-to-cart input.quantity-input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.single-product .woocommerce-zunzo-add-to-cart .btn-add-cart.single_add_to_cart_button {
    border-radius: 6px;
    border: 1px solid rgba(18, 18, 18, 1);
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: rgba(18, 18, 18, 1);
    min-height: 52px;
    padding: 12px 18px;
    text-transform: uppercase;
    letter-spacing: 0;
    font-family: "Oswald", sans-serif;
}

.single-product .woocommerce-zunzo-add-to-cart .btn-add-cart.single_add_to_cart_button:hover,
.single-product .woocommerce-zunzo-add-to-cart .btn-add-cart.single_add_to_cart_button:focus {
    background-color: rgba(18, 18, 18, 1);
    color: #fff;
}

/* Ensure original price is crossed out on sale */
.single-product .tf-product-info-price .compare-at-price,
.single-product .tf-product-info-price .compare-at-price del {
    text-decoration: line-through;
    text-decoration-thickness: 1px;
    color: #A0A0A0;
}

/* Constrain Woo cart page to site container width */
.woocommerce-cart #content,
.woocommerce-cart #main,
.woocommerce-cart .site-content,
.woocommerce-cart .entry-content,
.woocommerce-cart .woocommerce {
    width: 100%;
}

.woocommerce-cart .entry-content > .woocommerce,
.woocommerce-cart #main > .woocommerce,
.woocommerce-cart #content > .woocommerce,
.woocommerce-cart .cart-empty,
.woocommerce-cart .return-to-shop,
.woocommerce-cart .woocommerce-notices-wrapper,
.woocommerce-cart .woocommerce-form-coupon-toggle,
.woocommerce-cart .cart-collaterals,
.woocommerce-cart form.woocommerce-cart-form {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
}

/* WooCommerce Coming Soon layout: keep content contained */
.woocommerce-cart .woocommerce-coming-soon-banner-container,
.woocommerce-cart .woocommerce-coming-soon-header,
.woocommerce-cart .woocommerce-coming-soon-banner-container > .wp-block-group {
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box;
}

.woocommerce-cart .woocommerce-coming-soon-header .wp-block-group__inner-container,
.woocommerce-cart .woocommerce-coming-soon-banner-container .wp-block-group__inner-container {
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100%;
}

.woocommerce-cart .woocommerce-coming-soon-banner {
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
}

/* Woo cart block: constrain alignwide wrapper and add side padding */
.woocommerce-cart .entry-content > .wp-block-woocommerce-cart.alignwide,
.woocommerce-cart .entry-content > .wp-block-woocommerce-cart,
.woocommerce-cart .woocommerce .wp-block-woocommerce-cart.alignwide,
.woocommerce-cart .woocommerce .wp-block-woocommerce-cart {
    width: 100% !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box;
}

.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart,
.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-sidebar-layout {
    width: 100%;
    max-width: 100%;
}

/* Cart page top spacing */
.woocommerce-cart .entry-content > .wp-block-woocommerce-cart.alignwide,
.woocommerce-cart .entry-content > .wp-block-woocommerce-cart,
.woocommerce-cart .woocommerce .wp-block-woocommerce-cart.alignwide,
.woocommerce-cart .woocommerce .wp-block-woocommerce-cart {
    padding-top: 24px !important;
}

/* Cart block CTA: Proceed to checkout button style */
.woocommerce-cart .wc-block-cart__submit .wc-block-components-button,
.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-button,
.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-button.wp-element-button {
    background-color: #c3e92d !important;
    border: 1px solid #c3e92d !important;
    color: #121212 !important;
    border-radius: 6px !important;
    min-height: 52px;
    padding: 12px 24px !important;
    font-family: "Oswald", sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    line-height: 1.2;
}

.woocommerce-cart .wc-block-cart__submit .wc-block-components-button:hover,
.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-button:hover,
.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-button.wp-element-button:hover,
.woocommerce-cart .wc-block-cart__submit .wc-block-components-button:focus,
.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-button:focus,
.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-button.wp-element-button:focus {
    background-color: #121212 !important;
    border-color: #121212 !important;
    color: #ffffff !important;
}

.woocommerce-cart .wc-block-cart__submit .wc-block-components-button__text,
.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-button__text {
    color: inherit !important;
}

/* Checkout page container: match cart width/padding */
.woocommerce-checkout .entry-content > .wp-block-woocommerce-checkout.alignwide,
.woocommerce-checkout .entry-content > .wp-block-woocommerce-checkout,
.woocommerce-checkout .woocommerce .wp-block-woocommerce-checkout.alignwide,
.woocommerce-checkout .woocommerce .wp-block-woocommerce-checkout,
.woocommerce-checkout form.checkout.woocommerce-checkout,
.woocommerce-checkout .woocommerce-checkout {
    width: 100% !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box;
}

.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout,
.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout {
    width: 100%;
    max-width: 100%;
}

/* Remove WP page-title header block that inherits .header black bar on Woo pages */
.woocommerce-cart article.page > header.header,
.woocommerce-checkout article.page > header.header,
.woocommerce-page article.page > header.header {
    display: none !important;
}

/* Tighten top spacing below site header on cart/checkout */
.woocommerce-cart article.page .entry-content,
.woocommerce-checkout article.page .entry-content,
.woocommerce-page article.page .entry-content {
    margin-top: 0 !important;
    padding-top: 8px !important;
}

/* Checkout CTA: Place order button matches theme buttons */
.woocommerce-checkout #payment #place_order,
.woocommerce-checkout #place_order,
.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-button,
.woocommerce-checkout .wc-block-components-checkout-place-order-button,
.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-button {
    background-color: #c3e92d;
    border: 1px solid #c3e92d;
    color: #121212;
    border-radius: 6px;
    min-height: 52px;
    padding: 12px 24px;
    font-family: "Oswald", sans-serif;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    line-height: 1.2;
}

.woocommerce-checkout #payment #place_order:hover,
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-button:hover,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-button:hover,
.woocommerce-checkout #payment #place_order:focus,
.woocommerce-checkout #place_order:focus,
.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-button:focus,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus,
.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-button:focus {
    background-color: #121212;
    border-color: #121212;
    color: #ffffff;
}

/* My Account / Login page: constrain width and remove inherited page header bar */
.woocommerce-account article.page > header.header {
    display: none !important;
}

.woocommerce-account article.page .entry-content {
    margin-top: 0 !important;
    padding-top: 8px !important;
}

.woocommerce-account article.page .entry-content > .woocommerce,
.woocommerce-account .woocommerce-notices-wrapper {
    width: 100% !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box;
}

/* My Account page wrapper container (strong override) */
.woocommerce-account article.page {
    width: 100% !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box;
}

.woocommerce-account article.page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
}

/* My Account page polish */
.woocommerce-account article.page {
    padding-top: 28px;
    padding-bottom: 48px;
}

.woocommerce-account .woocommerce {
    display: flex;
    gap: 28px;
    align-items: flex-start;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
    width: 280px;
    flex: 0 0 280px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    overflow: hidden;
    background: #ffffff;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    margin: 0;
    border-bottom: 1px solid #efefef;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: block;
    padding: 12px 16px;
    font-family: "Oswald", sans-serif;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #121212;
    background: #ffffff;
    transition: background-color .2s ease, color .2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:focus {
    background: #f3f8d8;
    color: #121212;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a:focus {
    background: #c3e92d;
    color: #121212;
}

.woocommerce-account .woocommerce-MyAccount-content {
    flex: 1 1 auto;
    min-width: 0;
}

@media (max-width: 991px) {
    .woocommerce-account .woocommerce {
        flex-direction: column;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        width: 100%;
        flex: 1 1 auto;
    }
}

/* My Account (logged out): center and contain login form */
.woocommerce-account .woocommerce > h2,
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper {
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
}

.woocommerce-account .woocommerce form.woocommerce-form-login,
.woocommerce-account .woocommerce form.woocommerce-ResetPassword,
.woocommerce-account .woocommerce form.lost_reset_password {
    width: 100%;
    max-width: 680px;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    clear: both;
}

/* Logged-out account page: ensure heading and form stack, not side-by-side */
.woocommerce-account .woocommerce:has(> form.woocommerce-form-login),
.woocommerce-account .woocommerce:has(> form.woocommerce-ResetPassword),
.woocommerce-account .woocommerce:has(> form.lost_reset_password) {
    display: block;
}

.woocommerce-account .woocommerce > h2,
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper,
.woocommerce-account .woocommerce > form.woocommerce-form-login,
.woocommerce-account .woocommerce > form.woocommerce-ResetPassword,
.woocommerce-account .woocommerce > form.lost_reset_password {
    clear: both;
    width: 100%;
}

/* My Account login submit button: match theme CTA style */
.woocommerce-account .woocommerce form.woocommerce-form-login .woocommerce-form-login__submit,
.woocommerce-account .woocommerce form.woocommerce-form-login button.woocommerce-button,
.woocommerce-account .woocommerce form.woocommerce-form-login .button {
    background-color: #c3e92d !important;
    border: 1px solid #c3e92d !important;
    color: #121212 !important;
    border-radius: 6px !important;
    min-height: 48px;
    padding: 10px 22px !important;
    font-family: "Oswald", sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    line-height: 1.2;
}

.woocommerce-account .woocommerce form.woocommerce-form-login .woocommerce-form-login__submit:hover,
.woocommerce-account .woocommerce form.woocommerce-form-login button.woocommerce-button:hover,
.woocommerce-account .woocommerce form.woocommerce-form-login .button:hover,
.woocommerce-account .woocommerce form.woocommerce-form-login .woocommerce-form-login__submit:focus,
.woocommerce-account .woocommerce form.woocommerce-form-login button.woocommerce-button:focus,
.woocommerce-account .woocommerce form.woocommerce-form-login .button:focus {
    background-color: #121212 !important;
    border-color: #121212 !important;
    color: #ffffff !important;
}

/* My Account address actions: use same theme button style */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-link a,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address a.button,
.woocommerce-account .woocommerce-MyAccount-content a.button,
.woocommerce-account .woocommerce-MyAccount-content .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #c3e92d !important;
    border: 1px solid #c3e92d !important;
    color: #121212 !important;
    border-radius: 6px !important;
    min-height: 44px;
    padding: 10px 18px !important;
    font-family: "Oswald", sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    line-height: 1.2;
    text-decoration: none !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-link a:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address a.button:hover,
.woocommerce-account .woocommerce-MyAccount-content a.button:hover,
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit:focus,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-link a:focus,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address a.button:focus,
.woocommerce-account .woocommerce-MyAccount-content a.button:focus,
.woocommerce-account .woocommerce-MyAccount-content .button:focus {
    background-color: #121212 !important;
    border-color: #121212 !important;
    color: #ffffff !important;
}

/* Shop archive page container */
.post-type-archive-product article.page,
.woocommerce-shop article.page,
.post-type-archive-product article.page .entry-content > .woocommerce,
.woocommerce-shop article.page .entry-content > .woocommerce,
.post-type-archive-product .woocommerce-result-count,
.post-type-archive-product .woocommerce-ordering,
.woocommerce-shop .woocommerce-result-count,
.woocommerce-shop .woocommerce-ordering,
.post-type-archive-product ul.products,
.woocommerce-shop ul.products {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
}

.post-type-archive-product article.page .entry-content,
.woocommerce-shop article.page .entry-content {
    padding-top: 8px;
    margin-top: 0;
}

/* Shop archive wrapper (actual template structure) */
.post-type-archive-product #primary,
.post-type-archive-product #main.site-main,
.woocommerce-shop #primary,
.woocommerce-shop #main.site-main {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
}

/* Shop page: hide top breadcrumbs and shop header/title block */
.post-type-archive-product .woocommerce-breadcrumb,
.woocommerce-shop .woocommerce-breadcrumb,
.post-type-archive-product .woocommerce-products-header,
.woocommerce-shop .woocommerce-products-header {
    display: none !important;
}

/* Single product main image: use full width with natural height (not forced ratio) */
.single-product .thumbs-bottom .thumbs-slider .tf-product-media-main .item {
    display: block;
    aspect-ratio: auto !important;
    height: auto !important;
}

.single-product .thumbs-bottom .thumbs-slider .tf-product-media-main .item img {
    display: block;
    width: 100%;
    height: auto !important;
    object-fit: unset !important;
}

.wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container {
    position: relative;
}
.default-page-template .entry-content ul, .default-page-template .entry-content ol {
    margin: 0!important;
}
