/*
 * Lavender Dreams — WooCommerce Styles
 * Gold premium design matching Rituals aesthetic
 */

/* ===== SHOP PAGE ===== */
.woocommerce .products,
.woocommerce-page .products {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2.5rem !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center;
    background: var(--white, #FDFAF5);
    border: 1px solid rgba(197,165,114,.12);
    transition: all .4s cubic-bezier(.25,.02,.15,1);
}

.woocommerce ul.products li.product:hover {
    border-color: var(--gold, #C5A572);
    box-shadow: 0 12px 40px rgba(197,165,114,.12);
    transform: translateY(-4px);
}

/* Product image */
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    height: auto !important;
    display: block;
}

/* Placeholder image */
.woocommerce ul.products li.product .woocommerce-placeholder,
.woocommerce ul.products li.product img.wp-post-image[src*="placeholder"] {
    background: var(--cream, #F8F3EB) !important;
    opacity: .5;
}

/* Product title */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 1.1rem !important;
    font-weight: 400 !important;
    color: var(--gold-d, #A8884C) !important;
    padding: 1.2rem 1.5rem .3rem !important;
    margin: 0 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

/* Product price */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price span {
    font-family: 'Inter', sans-serif !important;
    font-size: .85rem !important;
    font-weight: 400 !important;
    color: var(--txt-m, #9A8E80) !important;
    display: block;
    padding: .2rem 1.5rem .8rem !important;
}

/* Price TBA */
.ld-price-tba {
    font-family: 'Inter', sans-serif;
    font-size: .78rem;
    font-weight: 300;
    font-style: italic;
    color: var(--txt-m, #9A8E80);
    letter-spacing: .04em;
}

/* Add to cart button (shop loop) */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.add_to_cart_button,
.woocommerce ul.products li.product a.product_type_simple {
    display: block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: .62rem !important;
    font-weight: 500 !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    background: transparent !important;
    color: var(--gold, #C5A572) !important;
    border: 1px solid var(--gold, #C5A572) !important;
    border-radius: 0 !important;
    padding: 12px 20px !important;
    margin: 0 1.5rem 1.5rem !important;
    transition: all .4s cubic-bezier(.25,.02,.15,1) !important;
    text-decoration: none !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.add_to_cart_button:hover,
.woocommerce ul.products li.product a.product_type_simple:hover {
    background: var(--gold, #C5A572) !important;
    color: white !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(197,165,114,.25);
}

/* ===== SINGLE PRODUCT ===== */
.woocommerce div.product {
    max-width: 1000px;
    margin: 0 auto;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    font-family: 'Inter', sans-serif !important;
    font-size: 1.3rem !important;
    font-weight: 400 !important;
    color: var(--gold-d, #A8884C) !important;
}

.woocommerce div.product .product_title {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: clamp(1.6rem, 3vw, 2.2rem) !important;
    font-weight: 300 !important;
    color: var(--gold-d, #A8884C) !important;
    margin-bottom: .8rem !important;
}

.woocommerce div.product .woocommerce-product-details__short-description {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    color: var(--txt, #3A3228) !important;
    line-height: 1.8 !important;
    margin-bottom: 1.5rem !important;
}

/* Single product: Add to cart button */
.woocommerce div.product form.cart .button,
.woocommerce div.product .single_add_to_cart_button {
    font-family: 'Inter', sans-serif !important;
    font-size: .68rem !important;
    font-weight: 500 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    background: var(--gold, #C5A572) !important;
    color: white !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 16px 42px !important;
    transition: all .4s cubic-bezier(.25,.02,.15,1) !important;
}

.woocommerce div.product form.cart .button:hover,
.woocommerce div.product .single_add_to_cart_button:hover {
    background: var(--gold-d, #A8884C) !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(197,165,114,.25);
}

/* Quantity input */
.woocommerce .quantity .qty {
    font-family: 'Inter', sans-serif !important;
    border: 1px solid rgba(197,165,114,.3) !important;
    border-radius: 0 !important;
    padding: 10px 12px !important;
    width: 70px !important;
    text-align: center !important;
    font-size: .9rem !important;
    color: var(--txt, #3A3228) !important;
}

.woocommerce .quantity .qty:focus {
    border-color: var(--gold, #C5A572) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(197,165,114,.15) !important;
}

/* Product tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs {
    padding: 0 !important;
    margin: 3rem 0 0 !important;
    border-bottom: 1px solid rgba(197,165,114,.15) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
    border-bottom-color: rgba(197,165,114,.15) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    font-family: 'Inter', sans-serif !important;
    font-size: .68rem !important;
    font-weight: 500 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
    color: var(--txt-m, #9A8E80) !important;
    padding: 12px 24px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border-bottom-color: var(--gold, #C5A572) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--gold-d, #A8884C) !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    line-height: 1.8 !important;
    border: none !important;
    box-shadow: none !important;
    padding: 2rem 0 !important;
}

/* ===== CART ===== */
.woocommerce-cart .woocommerce {
    max-width: 1000px;
    margin: 0 auto;
}

.woocommerce table.shop_table {
    border: 1px solid rgba(197,165,114,.15) !important;
    border-radius: 0 !important;
}

.woocommerce table.shop_table th {
    font-family: 'Inter', sans-serif !important;
    font-size: .68rem !important;
    font-weight: 500 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
    color: var(--txt-m, #9A8E80) !important;
    border-bottom: 1px solid rgba(197,165,114,.15) !important;
    padding: 14px 16px !important;
}

.woocommerce table.shop_table td {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    color: var(--txt, #3A3228) !important;
    border-bottom: 1px solid rgba(197,165,114,.08) !important;
    padding: 16px !important;
    vertical-align: middle !important;
}

.woocommerce table.shop_table td.product-name a {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 400 !important;
    font-size: 1rem !important;
    color: var(--gold-d, #A8884C) !important;
}

.woocommerce table.shop_table td.product-name a:hover {
    color: var(--gold, #C5A572) !important;
}

/* Cart totals */
.woocommerce .cart_totals h2 {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 1.3rem !important;
    font-weight: 300 !important;
    color: var(--gold-d, #A8884C) !important;
}

/* Buttons: Update cart, Continue shopping */
.woocommerce .cart .button,
.woocommerce .cart input.button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    font-family: 'Inter', sans-serif !important;
    font-size: .62rem !important;
    font-weight: 500 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    background: var(--gold, #C5A572) !important;
    color: white !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 14px 32px !important;
    transition: all .4s cubic-bezier(.25,.02,.15,1) !important;
}

.woocommerce .cart .button:hover,
.woocommerce .cart input.button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
    background: var(--gold-d, #A8884C) !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(197,165,114,.25);
}

/* Alt button style */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
    background: var(--gold, #C5A572) !important;
    color: white !important;
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
    background: var(--gold-d, #A8884C) !important;
}

/* Disabled button */
.woocommerce a.button.disabled,
.woocommerce button.button:disabled,
.woocommerce input.button:disabled {
    opacity: .5 !important;
    background: var(--gold-l, #DCC9A3) !important;
}

/* Remove item */
.woocommerce a.remove {
    color: var(--txt-m, #9A8E80) !important;
    font-size: 1.2rem !important;
}

.woocommerce a.remove:hover {
    background: transparent !important;
    color: #c00 !important;
}

/* ===== CHECKOUT ===== */
.woocommerce-checkout .woocommerce {
    max-width: 1000px;
    margin: 0 auto;
}

.woocommerce form .form-row label {
    font-family: 'Inter', sans-serif !important;
    font-size: .75rem !important;
    font-weight: 400 !important;
    letter-spacing: .06em !important;
    color: var(--txt, #3A3228) !important;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single {
    font-family: 'Inter', sans-serif !important;
    font-size: .9rem !important;
    font-weight: 300 !important;
    border: 1px solid rgba(197,165,114,.25) !important;
    border-radius: 0 !important;
    padding: 12px 16px !important;
    color: var(--txt, #3A3228) !important;
    background: var(--white, #FDFAF5) !important;
    transition: border-color .3s !important;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
    border-color: var(--gold, #C5A572) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(197,165,114,.12) !important;
}

/* Select2 dropdown */
.select2-container--default .select2-selection--single {
    height: auto !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding: 0 !important;
    color: var(--txt, #3A3228) !important;
    font-family: 'Inter', sans-serif !important;
}

.select2-dropdown {
    border-color: rgba(197,165,114,.25) !important;
    border-radius: 0 !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background: var(--gold, #C5A572) !important;
}

/* Checkout headings */
.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 1.3rem !important;
    font-weight: 300 !important;
    color: var(--gold-d, #A8884C) !important;
    padding-bottom: .8rem !important;
    border-bottom: 1px solid rgba(197,165,114,.15) !important;
    margin-bottom: 1.5rem !important;
}

/* Payment methods */
.woocommerce-checkout #payment {
    background: var(--cream, #F8F3EB) !important;
    border-radius: 0 !important;
    border: 1px solid rgba(197,165,114,.12) !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid rgba(197,165,114,.12) !important;
    padding: 1.5rem !important;
}

.woocommerce-checkout #payment ul.payment_methods li label {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    color: var(--txt, #3A3228) !important;
}

.woocommerce-checkout #payment div.payment_box {
    background: rgba(197,165,114,.08) !important;
    color: var(--txt, #3A3228) !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    font-size: .85rem !important;
    border-radius: 0 !important;
}

.woocommerce-checkout #payment div.payment_box::before {
    border-bottom-color: rgba(197,165,114,.08) !important;
}

/* Place order button */
.woocommerce #payment #place_order {
    font-family: 'Inter', sans-serif !important;
    font-size: .72rem !important;
    font-weight: 500 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    background: var(--gold, #C5A572) !important;
    color: white !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 18px 42px !important;
    width: 100% !important;
    transition: all .4s cubic-bezier(.25,.02,.15,1) !important;
}

.woocommerce #payment #place_order:hover {
    background: var(--gold-d, #A8884C) !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(197,165,114,.25);
}

/* ===== BREADCRUMBS ===== */
.ld-breadcrumb {
    font-family: 'Inter', sans-serif;
    font-size: .72rem;
    font-weight: 300;
    color: var(--txt-m, #9A8E80);
    padding: 1rem 0;
    letter-spacing: .04em;
}

.ld-breadcrumb a {
    color: var(--gold, #C5A572) !important;
    text-decoration: none !important;
}

.ld-breadcrumb a:hover {
    color: var(--gold-d, #A8884C) !important;
}

.ld-bc-sep {
    margin: 0 .5rem;
    color: var(--gold-l, #DCC9A3);
}

/* ===== NOTICES ===== */
.woocommerce .woocommerce-message {
    border-top-color: var(--gold, #C5A572) !important;
    background: rgba(197,165,114,.06) !important;
    color: var(--txt, #3A3228) !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
}

.woocommerce .woocommerce-message::before {
    color: var(--gold, #C5A572) !important;
}

.woocommerce .woocommerce-info {
    border-top-color: var(--gold-l, #DCC9A3) !important;
    background: rgba(197,165,114,.04) !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
}

.woocommerce .woocommerce-error {
    border-top-color: #c00 !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
}

/* ===== PAGINATION ===== */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    font-family: 'Inter', sans-serif !important;
    color: var(--txt-m, #9A8E80) !important;
    border-color: rgba(197,165,114,.15) !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--gold, #C5A572) !important;
    border-color: var(--gold, #C5A572) !important;
    color: white !important;
}

/* ===== ORDERING / RESULTS COUNT ===== */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering select {
    font-family: 'Inter', sans-serif !important;
    font-size: .75rem !important;
    font-weight: 300 !important;
    color: var(--txt-m, #9A8E80) !important;
}

.woocommerce .woocommerce-ordering select {
    border: 1px solid rgba(197,165,114,.25) !important;
    border-radius: 0 !important;
    padding: 8px 12px !important;
}

/* ===== SALE BADGE ===== */
.woocommerce span.onsale {
    background: var(--gold, #C5A572) !important;
    color: white !important;
    border-radius: 0 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: .6rem !important;
    font-weight: 500 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    padding: 6px 14px !important;
    min-height: auto !important;
    min-width: auto !important;
    line-height: 1.5 !important;
}

/* ===== STAR RATING ===== */
.woocommerce .star-rating span::before {
    color: var(--gold, #C5A572) !important;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
    .woocommerce .products,
    .woocommerce-page .products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 1rem !important;
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title {
        font-size: .95rem !important;
        padding: 1rem 1rem .2rem !important;
    }

    .woocommerce ul.products li.product .button,
    .woocommerce ul.products li.product a.add_to_cart_button {
        margin: 0 1rem 1rem !important;
        font-size: .55rem !important;
        padding: 10px 14px !important;
    }

    .woocommerce ul.products li.product .price {
        padding: .2rem 1rem .5rem !important;
    }
}

@media (max-width: 480px) {
    .woocommerce .products,
    .woocommerce-page .products {
        grid-template-columns: 1fr !important;
    }
}

/* ===== MINI CART (widget/block) ===== */
.widget_shopping_cart .total {
    border-top: 1px solid rgba(197,165,114,.15) !important;
}

.widget_shopping_cart .total .woocommerce-Price-amount {
    color: var(--gold-d, #A8884C) !important;
}

/* ===== PAGE TITLES ===== */
.woocommerce-products-header__title,
.woocommerce-loop-product__title,
.page-title {
    font-family: 'Playfair Display', Georgia, serif !important;
    color: var(--gold-d, #A8884C) !important;
    font-weight: 300 !important;
}

/* ===== RELATED PRODUCTS ===== */
.woocommerce div.product .related h2,
.woocommerce div.product .upsells h2 {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 1.3rem !important;
    font-weight: 300 !important;
    color: var(--gold-d, #A8884C) !important;
    margin-bottom: 1.5rem !important;
}
