/*!
 * Gazi Suits — WooCommerce Overrides
 */

/* Shop hero */
.gz-shop-hero { padding: 4rem 0 3rem; background: var(--gz-beige-warm); text-align: center; }
@media (min-width: 768px) { .gz-shop-hero { padding: 5rem 0 4rem; } }

/* WooCommerce shop toolbar */
.woocommerce-notices-wrapper { max-width: 1400px; margin: 1rem auto; padding: 0 1rem; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { background: var(--gz-beige-warm); border-top: 3px solid var(--gz-gold); padding: 1rem 1.25rem; margin-bottom: 1rem; }

.woocommerce-result-count { font-size: .85rem; color: rgba(0,0,0,0.6); }
.woocommerce-ordering select { max-width: 220px; }

/* Breadcrumbs */
.gz-breadcrumbs { font-size: .8rem; color: rgba(0,0,0,0.55); margin-bottom: 1.5rem; letter-spacing: .04em; }
.gz-breadcrumbs a { color: rgba(0,0,0,0.55); }
.gz-breadcrumbs a:hover { color: var(--gz-gold); }
.gz-crumb-sep { color: rgba(0,0,0,0.3); margin: 0 .3rem; }

/* Single Product Layout */
.gz-single-product { padding: 2rem 0 4rem; }
.gz-single-product__grid { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media (min-width: 768px) { .gz-single-product__grid { grid-template-columns: 1fr 1fr; gap: 3rem; } }
@media (min-width: 1024px) { .gz-single-product__grid { gap: 4rem; } }

.gz-single-product .woocommerce-product-gallery { max-width: 100%; }
.gz-single-product .woocommerce-product-gallery__image img { background: var(--gz-beige-warm); }
.gz-single-product .flex-control-thumbs { margin-top: .75rem; display: flex; gap: .5rem; overflow-x: auto; padding: 0; list-style: none; }
.gz-single-product .flex-control-thumbs li { width: 80px !important; flex-shrink: 0; }
.gz-single-product .flex-control-thumbs img { cursor: pointer; opacity: .5; transition: opacity .2s; }
.gz-single-product .flex-control-thumbs img.flex-active, .gz-single-product .flex-control-thumbs img:hover { opacity: 1; }

.gz-single-product .product_title { font-family: 'Gloock', serif; font-weight: 400; font-size: clamp(1.9rem, 4.5vw, 3rem); line-height: 1.1; letter-spacing: -0.01em; margin: 0 0 1rem; }
.gz-single-product .price { font-family: 'Gloock', serif; font-size: 1.85rem; color: var(--gz-charcoal); margin: 1rem 0; }
.gz-single-product .price del { color: rgba(0,0,0,0.35); font-size: 1.1rem; margin-right: .5rem; }
.gz-single-product .price ins { text-decoration: none; }

.gz-single-product .woocommerce-product-details__short-description { color: rgba(0,0,0,0.7); margin: 1rem 0; }

/* Trust badges */
.gz-trust-badges { display: grid; grid-template-columns: repeat(2, 1fr); gap: .75rem; padding: 1rem 0; border-top: 1px solid var(--gz-border); border-bottom: 1px solid var(--gz-border); margin: 1.5rem 0; }
.gz-trust-badges__item { display: flex; align-items: center; gap: .5rem; font-size: .8rem; }

/* Variations */
.gz-single-product .variations { border: none; margin: 1rem 0; }
.gz-single-product .variations th, .gz-single-product .variations td { padding: .5rem 0; background: none; border: none; }
.gz-single-product .variations th { font-family: 'Cabinet Grotesk', sans-serif; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; font-size: .7rem; }
.gz-single-product select { max-width: 260px; }

/* Quantity + Add-to-Cart */
.gz-single-product .quantity { display: inline-flex; align-items: center; margin-right: 1rem; }
.gz-single-product .quantity input.qty { width: 60px; text-align: center; }
.gz-single-product form.cart { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; margin: 1.5rem 0; }
.gz-single-product form.cart .button, .gz-single-product .single_add_to_cart_button, .gz-buy-now { padding: 1rem 1.75rem; font-family: 'Cabinet Grotesk', sans-serif; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; font-size: 0.78rem; border: 1px solid var(--gz-gold); background: var(--gz-gold); color: #fff; border-radius: var(--gz-radius); cursor: pointer; transition: background-color .25s; min-height: 48px; }
.gz-single-product form.cart .button:hover, .gz-single-product .single_add_to_cart_button:hover { background: var(--gz-gold-dark); }
.gz-buy-now { background: var(--gz-charcoal); border-color: var(--gz-charcoal); color: #fff; }
.gz-buy-now:hover { background: #000; color: #fff; }

/* PIN code check */
.gz-pincode { margin: 1.5rem 0; padding: 1.25rem; background: var(--gz-beige-warm); border-radius: var(--gz-radius); }
.gz-pincode__row { display: flex; gap: .5rem; margin-top: .5rem; }
.gz-pincode__result { margin-top: .75rem; font-size: .85rem; }
.gz-pincode__result.is-success { color: #1c7a3d; }
.gz-pincode__result.is-error   { color: #b41c1c; }

/* Product tabs */
.woocommerce-tabs { margin-top: 3rem; }
.woocommerce-tabs ul.tabs { padding: 0 !important; margin: 0 0 1rem !important; list-style: none; display: flex; gap: 1rem; overflow-x: auto; border-bottom: 1px solid var(--gz-border); }
.woocommerce-tabs ul.tabs::before, .woocommerce-tabs ul.tabs li::before, .woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce-tabs ul.tabs li { background: none !important; border: none !important; padding: 0 !important; margin: 0 !important; }
.woocommerce-tabs ul.tabs li a { display: block; padding: .75rem 0 1rem; font-family: 'Cabinet Grotesk', sans-serif; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; font-size: .72rem; color: rgba(0,0,0,0.55); border-bottom: 2px solid transparent; }
.woocommerce-tabs ul.tabs li.active a { color: var(--gz-charcoal); border-bottom-color: var(--gz-gold); }
.woocommerce-tabs .panel { padding: 1.5rem 0; font-size: 1rem; color: rgba(0,0,0,0.8); }

/* Related products */
.related.products, .up-sells { margin-top: 4rem; }
.related.products > h2, .up-sells > h2 { font-family: 'Gloock', serif; font-weight: 400; font-size: clamp(1.5rem, 4vw, 2.25rem); margin: 0 0 2rem; }

/* Cart page */
.woocommerce-cart .woocommerce { max-width: 1200px; margin: 0 auto; padding: 3rem 1rem; }
.woocommerce-cart-form table.cart { border: none; }
.woocommerce-cart-form table.cart th { background: none; font-family: 'Cabinet Grotesk', sans-serif; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; font-size: .72rem; padding: .75rem 0; }
.woocommerce-cart-form table.cart td { padding: 1rem .5rem; border-top: 1px solid var(--gz-border); }
.woocommerce-cart-form .product-thumbnail img { width: 80px; }
.woocommerce-cart-form input.qty { width: 60px; padding: .5rem; text-align: center; }
.cart-collaterals { max-width: 400px; margin-left: auto; }
.cart_totals h2 { font-family: 'Gloock', serif; font-size: 1.5rem; margin-bottom: 1rem; }
.wc-proceed-to-checkout .button { display: block; width: 100%; text-align: center; }
.checkout-button { background: var(--gz-gold) !important; color: #fff !important; padding: 1rem 1.75rem !important; font-family: 'Cabinet Grotesk', sans-serif !important; font-weight: 700 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; font-size: 0.78rem !important; }
.checkout-button:hover { background: var(--gz-gold-dark) !important; }

/* Checkout */
.woocommerce-checkout .woocommerce { max-width: 1200px; margin: 0 auto; padding: 3rem 1rem; }
#customer_details { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media (min-width: 768px) { #customer_details { grid-template-columns: 1fr 1fr; } }
h3#order_review_heading, .woocommerce-checkout h3 { font-family: 'Gloock', serif; font-size: 1.5rem; font-weight: 400; margin: 1.5rem 0 1rem; }
#order_review_heading { margin-top: 2.5rem; }
.woocommerce-checkout-payment { background: #fff; padding: 1.5rem; border-radius: var(--gz-radius); }
.woocommerce-checkout-payment ul { padding: 0; margin: 0; list-style: none; }
.woocommerce-checkout-payment li { padding: 1rem; border: 1px solid var(--gz-border); margin-bottom: .5rem; border-radius: var(--gz-radius); }
.woocommerce-checkout-payment li.wc_payment_method label { font-family: 'Cabinet Grotesk', sans-serif; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; font-size: .72rem; }
.place-order .button { display: block; width: 100%; padding: 1.15rem !important; background: var(--gz-gold) !important; color: #fff !important; text-align: center; font-family: 'Cabinet Grotesk', sans-serif !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; font-size: .8rem !important; }
.place-order .button:hover { background: var(--gz-gold-dark) !important; }

/* My Account */
.woocommerce-account .woocommerce { max-width: 1200px; margin: 0 auto; padding: 3rem 1rem; }
.woocommerce-MyAccount-navigation ul { padding: 0; margin: 0; list-style: none; }
.woocommerce-MyAccount-navigation li a { display: block; padding: .75rem 1rem; font-family: 'Cabinet Grotesk', sans-serif; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; font-size: .72rem; color: var(--gz-charcoal); border-left: 2px solid transparent; }
.woocommerce-MyAccount-navigation li.is-active a { border-left-color: var(--gz-gold); color: var(--gz-gold); }

/* Sticky mobile CTA */
.gz-sticky-cta { position: fixed; left: 0; right: 0; bottom: 0; z-index: 25; background: #fff; border-top: 1px solid var(--gz-border); box-shadow: 0 -4px 16px rgba(0,0,0,0.05); padding: .75rem 1rem calc(.75rem + env(safe-area-inset-bottom, 0)); }
@media (min-width: 768px) { .gz-sticky-cta { display: none; } }
.gz-sticky-cta__inner { display: flex; align-items: center; gap: .75rem; }
.gz-sticky-cta__img { width: 48px; height: 60px; object-fit: cover; }
.gz-sticky-cta__meta { flex: 1; min-width: 0; }
.gz-sticky-cta__title { font-family: 'Gloock', serif; font-size: .85rem; margin: 0; line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gz-sticky-cta__price { font-family: 'Outfit', sans-serif; font-size: .9rem; font-weight: 500; margin: .2rem 0 0; }
.gz-sticky-cta__btn { flex-shrink: 0; padding: .75rem 1.25rem; min-height: 44px; }

/* Prevent bottom overlap on product pages */
@media (max-width: 767px) { body.gz-product .site-footer { padding-bottom: 5rem; } }
