/* =========================
   DESIGN TOKENS
========================= */
:root{
    --m29-primary:#293d62;
    --m29-accent:#c9a03c;
    --m29-accent-hover:#b88f2f;
    --m29-border:#eadfca;
    --m29-bg-card:#ffffff;
    --m29-text:#293d62;
}

/* =========================
   GLOBAL BUTTONS
========================= */
.m29-btn,
.m29-whatsapp-btn,
.single_add_to_cart_button,
.button.alt {
    border-radius: 999px;
    font-weight: 700;
    transition: all .25s ease;
}

/* =========================
   BUY BADGE
========================= */
.m29-buy-badge,
.woocommerce ul.products li.product .onsale {
    background: var(--m29-accent);
    color: #fff;
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

/* =========================
   FLOATING WA BUTTON
========================= */
.m29-wa-floating {
    border-radius: 999px;
    box-shadow: 0 10px 24px rgba(0,0,0,.15);
}

/* =========================================================
   CART + CHECKOUT PREMIUM STYLING
   Add in: frontend-base.css
   ========================================================= */

/* ---------------------------------
   GLOBAL WOOCOMMERCE PAGE SPACING
--------------------------------- */
.woocommerce-cart #main-content .container,
.woocommerce-checkout #main-content .container,
.woocommerce-page #main-content .container {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
}

.woocommerce-cart #left-area,
.woocommerce-checkout #left-area {
    width: 100% !important;
    float: none !important;
    padding-right: 0 !important;
}

.woocommerce-cart #sidebar,
.woocommerce-checkout #sidebar,
.woocommerce-cart .et_right_sidebar #sidebar,
.woocommerce-checkout .et_right_sidebar #sidebar,
.woocommerce-cart .et_pb_widget_area_right,
.woocommerce-checkout .et_pb_widget_area_right,
.woocommerce-cart #main-content .container:before,
.woocommerce-checkout #main-content .container:before {
    display: none !important;
}

/* ---------------------------------
   PAGE TITLES
--------------------------------- */
.woocommerce-cart h1,
.woocommerce-checkout h1,
.woocommerce-page h1 {
    color: #293d62 !important;
    font-size: 52px !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    margin-bottom: 28px !important;
}

/* ---------------------------------
   NOTICES
--------------------------------- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    border: 1px solid #eadfca !important;
    border-radius: 18px !important;
    background: #fffdf9 !important;
    color: #293d62 !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.04) !important;
    padding: 18px 22px !important;
    margin-bottom: 24px !important;
}

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
    border-radius: 999px !important;
    background: #293d62 !important;
    color: #fff !important;
    padding: 10px 18px !important;
    font-weight: 600 !important;
}

/* ---------------------------------
   CART TABLE WRAP
--------------------------------- */
.woocommerce-cart table.shop_table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid #eadfca !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(0,0,0,0.04) !important;
}

.woocommerce-cart table.shop_table thead th {
    background: #fbf8f2 !important;
    color: #293d62 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    padding: 18px 20px !important;
    border-bottom: 1px solid #eee4d2 !important;
}

.woocommerce-cart table.shop_table td {
    padding: 18px 20px !important;
    border-top: 1px solid #f1eadf !important;
    vertical-align: middle !important;
}

.woocommerce-cart table.shop_table tr:first-child td {
    border-top: 0 !important;
}

/* cart product image */
.woocommerce-cart table.shop_table td.product-thumbnail img {
    width: 72px !important;
    border-radius: 12px !important;
    border: 1px solid #efe4d1 !important;
}

/* product name */
.woocommerce-cart table.shop_table td.product-name a {
    color: #293d62 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.woocommerce-cart table.shop_table td.product-name a:hover {
    color: #b8913f !important;
}

/* price/subtotal */
.woocommerce-cart table.shop_table td.product-price,
.woocommerce-cart table.shop_table td.product-subtotal,
.woocommerce-cart table.shop_table td.product-price .amount,
.woocommerce-cart table.shop_table td.product-subtotal .amount {
    color: #222 !important;
    font-weight: 700 !important;
}

/* remove icon */
.woocommerce-cart table.shop_table td.product-remove a {
    width: 34px !important;
    height: 34px !important;
    line-height: 32px !important;
    border-radius: 999px !important;
    background: #fff7f5 !important;
    color: #d45b43 !important;
    border: 1px solid #f2d2c9 !important;
    text-align: center !important;
    font-size: 20px !important;
}

.woocommerce-cart table.shop_table td.product-remove a:hover {
    background: #d45b43 !important;
    color: #fff !important;
}

/* quantity */
.woocommerce-cart .quantity .qty {
    height: 44px !important;
    min-width: 72px !important;
    border: 1px solid #e5dac6 !important;
    border-radius: 12px !important;
    background: #faf8f3 !important;
    color: #293d62 !important;
    font-weight: 600 !important;
}

/* coupon + update row */
.woocommerce-cart .actions {
    padding: 20px !important;
    background: #fffdf9 !important;
}

.woocommerce-cart .coupon .input-text {
    min-width: 220px !important;
    height: 46px !important;
    border-radius: 12px !important;
    border: 1px solid #e5dac6 !important;
    background: #fff !important;
    padding: 0 14px !important;
}

/* buttons */
.woocommerce-cart .button,
.woocommerce-cart .checkout-button,
.woocommerce-checkout .button,
.woocommerce-checkout #payment #place_order,
.woocommerce-checkout .wc-block-components-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    border: none !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #c9a24a, #b8913f) !important;
    color: #fff !important;
    font-weight: 700 !important;
    padding: 14px 26px !important;
    box-shadow: 0 10px 22px rgba(201,162,74,0.22) !important;
    transition: transform .2s ease, box-shadow .2s ease !important;
}

.woocommerce-cart .button:hover,
.woocommerce-cart .checkout-button:hover,
.woocommerce-checkout .button:hover,
.woocommerce-checkout #payment #place_order:hover,
.woocommerce-checkout .wc-block-components-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 26px rgba(201,162,74,0.28) !important;
}

/* secondary buttons */
.woocommerce-cart .actions .button:not(.checkout-button):not(.alt),
.woocommerce-checkout .woocommerce-form-login .button,
.woocommerce-checkout .woocommerce-form-coupon .button {
    background: #293d62 !important;
    box-shadow: none !important;
}

/* ---------------------------------
   CART TOTALS CARD
--------------------------------- */
.cart-collaterals .cart_totals,
.woocommerce-cart .cart-collaterals .cart_totals {
    background: #fff !important;
    border: 1px solid #eadfca !important;
    border-radius: 24px !important;
    padding: 26px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.05) !important;
}

.cart-collaterals .cart_totals h2,
.woocommerce-cart .cart-collaterals .cart_totals h2 {
    color: #293d62 !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    margin-bottom: 18px !important;
}

.cart-collaterals .cart_totals table.shop_table {
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

.cart-collaterals .cart_totals table.shop_table td,
.cart-collaterals .cart_totals table.shop_table th {
    padding: 14px 0 !important;
    border-top: 1px solid #f0e8da !important;
}

.cart-collaterals .cart_totals table.shop_table tr:first-child th,
.cart-collaterals .cart_totals table.shop_table tr:first-child td {
    border-top: 0 !important;
}

/* ---------------------------------
   CHECKOUT LAYOUT
--------------------------------- */
.woocommerce-checkout form.checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.85fr);
    gap: 34px !important;
    align-items: start !important;
}

.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review {
    width: 100% !important;
    float: none !important;
}

.woocommerce-checkout #customer_details {
    background: #fff !important;
    border: 1px solid #eadfca !important;
    border-radius: 24px !important;
    padding: 30px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.04) !important;
}

.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading {
    background: #fff !important;
    border: 1px solid #eadfca !important;
    border-radius: 24px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.04) !important;
}

.woocommerce-checkout #order_review_heading {
    margin: 0 0 12px !important;
    padding: 22px 24px !important;
    color: #293d62 !important;
    font-size: 28px !important;
    font-weight: 700 !important;
}

.woocommerce-checkout #order_review {
    padding: 20px 24px 24px !important;
}

/* section headings */
.woocommerce-checkout h3 {
    color: #293d62 !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    margin-bottom: 18px !important;
}

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
    margin-bottom: 28px !important;
}

/* labels */
.woocommerce-checkout label,
.woocommerce-checkout .form-row label {
    color: #5e6572 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    margin-bottom: 8px !important;
}

/* inputs */
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-cart input.input-text {
    height: 50px !important;
    border-radius: 14px !important;
    border: 1px solid #e5dac6 !important;
    background: #faf8f3 !important;
    color: #293d62 !important;
    padding: 0 16px !important;
    box-shadow: none !important;
}

.woocommerce-checkout textarea {
    min-height: 120px !important;
    height: auto !important;
    padding: 14px 16px !important;
}

/* order review table */
.woocommerce-checkout table.shop_table {
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td {
    padding: 14px 0 !important;
    border-top: 1px solid #f0e8da !important;
}

.woocommerce-checkout table.shop_table tr:first-child th,
.woocommerce-checkout table.shop_table tr:first-child td {
    border-top: 0 !important;
}

.woocommerce-checkout table.shop_table th {
    color: #293d62 !important;
    font-weight: 600 !important;
}

.woocommerce-checkout table.shop_table td,
.woocommerce-checkout table.shop_table .amount {
    color: #222 !important;
    font-weight: 600 !important;
}

/* payment area */
.woocommerce-checkout #payment {
    background: #fffdf9 !important;
    border: 1px solid #efe4d1 !important;
    border-radius: 18px !important;
    padding: 18px !important;
    margin-top: 18px !important;
}

.woocommerce-checkout #payment div.payment_box {
    background: #faf6ee !important;
    border-radius: 14px !important;
    color: #5c6575 !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid #efe4d1 !important;
    margin-bottom: 16px !important;
}

.woocommerce-checkout #payment ul.payment_methods li {
    margin-bottom: 10px !important;
}

/* ---------------------------------
   BLOCK-BASED CART / CHECKOUT SUPPORT
--------------------------------- */
.wc-block-cart,
.wc-block-checkout,
.wc-block-components-sidebar {
    background: #fff !important;
    border: 1px solid #eadfca !important;
    border-radius: 24px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.04) !important;
}

.wc-block-cart,
.wc-block-checkout {
    padding: 28px !important;
}

.wc-block-components-sidebar {
    padding: 22px !important;
}

.wc-block-components-totals-item,
.wc-block-components-order-summary-item {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}

.wc-block-components-product-name {
    color: #293d62 !important;
    font-weight: 600 !important;
}

.wc-block-components-button:not(.is-link) {
    border-radius: 999px !important;
    background: linear-gradient(135deg, #c9a24a, #b8913f) !important;
    color: #fff !important;
    font-weight: 700 !important;
    border: none !important;
}

/* ---------------------------------
   MOBILE
--------------------------------- */
@media (max-width: 980px) {
    .woocommerce-checkout form.checkout {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    .woocommerce-cart h1,
    .woocommerce-checkout h1,
    .woocommerce-page h1 {
        font-size: 40px !important;
    }
}

@media (max-width: 767px) {
    .woocommerce-cart #main-content .container,
    .woocommerce-checkout #main-content .container,
    .woocommerce-page #main-content .container {
        padding-top: 34px !important;
        padding-bottom: 34px !important;
    }

    .woocommerce-cart h1,
    .woocommerce-checkout h1,
    .woocommerce-page h1 {
        font-size: 32px !important;
        margin-bottom: 20px !important;
    }

    .woocommerce-checkout #customer_details,
    .woocommerce-checkout #order_review,
    .woocommerce-checkout #order_review_heading,
    .cart-collaterals .cart_totals {
        border-radius: 18px !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    .woocommerce-cart table.shop_table thead {
        display: none !important;
    }

    .woocommerce-cart table.shop_table td {
        display: block !important;
        width: 100% !important;
        text-align: left !important;
        padding: 10px 16px !important;
    }

    .woocommerce-cart table.shop_table tr {
        display: block !important;
        padding: 12px 0 !important;
        border-top: 1px solid #f1eadf !important;
    }

    .woocommerce-cart table.shop_table tr:first-child {
        border-top: 0 !important;
    }
}

/* =========================================================
   SEARCH RESULTS PAGE
   ========================================================= */

/* remove sidebar on search */
.search #sidebar,
.search .et_right_sidebar #sidebar,
.search .et_pb_widget_area_right,
.search #main-content .container:before {
    display: none !important;
}

.search #left-area,
.search .et_right_sidebar #left-area {
    width: 100% !important;
    float: none !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
}

/* page spacing */
.search #main-content .container {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
}

/* each result card */
.search article,
.search .et_pb_post,
.search .hentry {
    background: #fff !important;
    border: 1px solid #eadfca !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.04) !important;
    margin-bottom: 28px !important;
    padding: 0 !important;
}

/* result image */
.search article img,
.search .et_pb_post img,
.search .hentry img {
    width: 100% !important;
    max-height: 520px !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 !important;
}

/* result content */
.search article .entry-title,
.search .et_pb_post .entry-title,
.search .hentry .entry-title {
    font-size: 34px !important;
    line-height: 1.25 !important;
    color: #293d62 !important;
    font-weight: 700 !important;
    margin: 24px 28px 14px !important;
}

.search article .entry-title a,
.search .et_pb_post .entry-title a,
.search .hentry .entry-title a {
    color: #293d62 !important;
    text-decoration: none !important;
}

.search article .entry-title a:hover,
.search .et_pb_post .entry-title a:hover,
.search .hentry .entry-title a:hover {
    color: #b8913f !important;
}

.search article .post-meta,
.search .et_pb_post .post-meta,
.search .hentry .post-meta {
    margin: 0 28px 14px !important;
    color: #7a7f89 !important;
    font-size: 14px !important;
}

.search article .entry-summary,
.search article .post-content,
.search .et_pb_post .post-content,
.search .hentry .entry-content,
.search .hentry .entry-summary {
    margin: 0 28px 24px !important;
    color: #5c6575 !important;
    font-size: 16px !important;
    line-height: 1.8 !important;
}

/* read more */
.search article .more-link,
.search .et_pb_post .more-link,
.search .hentry .more-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 28px 28px !important;
    padding: 12px 20px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #c9a24a, #b8913f) !important;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    box-shadow: 0 10px 22px rgba(201,162,74,0.22) !important;
}

/* search pagination */
.search .pagination,
.search .wp-pagenavi,
.search nav.navigation.pagination {
    margin-top: 36px !important;
    display: flex !important;
    justify-content: center !important;
}

.search .pagination .alignleft,
.search .pagination .alignright {
    float: none !important;
}

.search nav.navigation.pagination .nav-links {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

.search nav.navigation.pagination .page-numbers,
.search .wp-pagenavi a,
.search .wp-pagenavi span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 42px !important;
    height: 42px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    border: 1px solid #eadfca !important;
    background: #fff !important;
    color: #293d62 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

.search nav.navigation.pagination .current,
.search .wp-pagenavi span.current {
    background: #293d62 !important;
    border-color: #293d62 !important;
    color: #fff !important;
}

/* search form */
.search .widget_search input[type="search"],
.search .et_pb_widget input[type="search"],
.search .search-form input[type="search"] {
    height: 48px !important;
    border-radius: 14px !important;
    border: 1px solid #e5dac6 !important;
    background: #faf8f3 !important;
    padding: 0 14px !important;
    color: #293d62 !important;
}

.search .widget_search input[type="submit"],
.search .et_pb_widget input[type="submit"],
.search .search-form input[type="submit"] {
    height: 48px !important;
    border: none !important;
    border-radius: 14px !important;
    background: #293d62 !important;
    color: #fff !important;
    padding: 0 18px !important;
    font-weight: 600 !important;
}

/* mobile */
@media (max-width: 767px) {
    .search #main-content .container {
        padding-top: 34px !important;
        padding-bottom: 34px !important;
    }

    .search article .entry-title,
    .search .et_pb_post .entry-title,
    .search .hentry .entry-title {
        font-size: 26px !important;
        margin: 18px 18px 12px !important;
    }

    .search article .post-meta,
    .search .et_pb_post .post-meta,
    .search .hentry .post-meta,
    .search article .entry-summary,
    .search article .post-content,
    .search .et_pb_post .post-content,
    .search .hentry .entry-content,
    .search .hentry .entry-summary {
        margin-left: 18px !important;
        margin-right: 18px !important;
    }

    .search article .more-link,
    .search .et_pb_post .more-link,
    .search .hentry .more-link {
        margin: 0 18px 20px !important;
    }
}
/* =========================================================
   SEARCH RESULTS = SAME AS PRODUCT ARCHIVE
   ========================================================= */

.search #sidebar,
.search .et_right_sidebar #sidebar,
.search .et_pb_widget_area_right,
.search #main-content .container:before {
    display: none !important;
}

.search #left-area,
.search .et_right_sidebar #left-area {
    width: 100% !important;
    float: none !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
}

.search .woocommerce-products-header {
    margin-bottom: 24px;
}

.search .woocommerce-products-header__title.page-title {
    font-size: 46px;
    line-height: 1.1;
    color: #293d62;
    font-weight: 700;
    margin-bottom: 10px;
}

.search .woocommerce-result-count {
    color: #6b7280;
    font-size: 15px;
    margin: 0 0 18px !important;
}

.search ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.search ul.products::before,
.search ul.products::after {
    display: none !important;
    content: none !important;
}

.search ul.products li.product {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 14px !important;
    border: 1px solid #eadfca;
    border-radius: 18px;
    background: #fff;
    box-sizing: border-box;
    transition: all .25s ease;
    position: relative;
}

.search ul.products li.product:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.07);
    border-color: #dcc8a1;
}

.search ul.products li.product a.woocommerce-LoopProduct-link {
    position: relative;
    display: flex !important;
    flex-direction: column !important;
    height: 100%;
    text-decoration: none !important;
}

.search ul.products li.product .m29-badge.m29-badge-buy {
    position: absolute !important;
    top: 14px !important;
    left: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 7px 14px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #c9a24a, #b8913f) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    box-shadow: 0 8px 18px rgba(201,162,74,0.28) !important;
    border: 1px solid rgba(255,255,255,0.35) !important;
    z-index: 5 !important;
}

.search ul.products li.product .et_shop_image {
    display: block !important;
    width: 100% !important;
    margin: 0 0 14px !important;
    border-radius: 12px;
    overflow: hidden;
}

.search ul.products li.product img {
    width: 100% !important;
    height: 260px !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 12px;
    margin-bottom: 0 !important;
    display: block;
}

.search ul.products li.product .woocommerce-loop-product__title,
.search ul.products li.product h2 {
    font-size: 16px !important;
    line-height: 1.45 !important;
    color: #293d62 !important;
    font-weight: 600 !important;
    margin: 0 0 10px !important;
    min-height: 70px;
    overflow: hidden;
}

.search ul.products li.product .price {
    display: block !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #222 !important;
    margin-top: auto !important;
}

.search ul.products li.product .button,
.search ul.products li.product .add_to_cart_button {
    display: none !important;
}

/* search pagination */
.search nav.navigation.pagination {
    margin-top: 36px !important;
    display: flex !important;
    justify-content: center !important;
}

.search nav.navigation.pagination .nav-links {
    display: flex !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

.search nav.navigation.pagination .page-numbers {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 42px !important;
    height: 42px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    border: 1px solid #eadfca !important;
    background: #fff !important;
    color: #293d62 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

.search nav.navigation.pagination .current {
    background: #293d62 !important;
    border-color: #293d62 !important;
    color: #fff !important;
}

@media (max-width: 980px) {
    .search ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    .search .woocommerce-products-header__title.page-title {
        font-size: 34px;
    }

    .search ul.products {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .search ul.products li.product img {
        height: 280px !important;
    }
}
/* =========================================================
   SEARCH PAGE GRID FORCE FIX
   ========================================================= */

/* kill Woo/Divi float layout */
.search ul.products::before,
.search ul.products::after {
    display: none !important;
    content: none !important;
}

/* force proper grid */
.search ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 28px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    align-items: start !important;
}

/* remove Woo floats */
.search ul.products li.product,
.search ul.products li.first,
.search ul.products li.last {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 14px !important;
    box-sizing: border-box !important;
}

/* product card layout */
.search ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    background: #fff !important;
    border: 1px solid #eadfca !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    transition: all .25s ease !important;
}

.search ul.products li.product:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.07);
    border-color: #dcc8a1;
}

/* make product link full card */
.search ul.products li.product a.woocommerce-LoopProduct-link {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    width: 100% !important;
    text-decoration: none !important;
    position: relative !important;
}

/* title clamp */
.search ul.products li.product .woocommerce-loop-product__title,
.search ul.products li.product h2 {
    min-height: 70px !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
}

/* responsive */
@media (max-width: 980px) {
    .search ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    .search ul.products {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .search ul.products li.product img {
        height: 280px !important;
    }
}

/* =========================================================
   MY ACCOUNT PAGE PREMIUM STYLING
   ========================================================= */

/* Remove sidebar */
.woocommerce-account #sidebar,
.woocommerce-account .et_right_sidebar #sidebar,
.woocommerce-account .et_pb_widget_area_right,
.woocommerce-account #main-content .container:before {
    display: none !important;
}

.woocommerce-account #left-area,
.woocommerce-account .et_right_sidebar #left-area {
    width: 100% !important;
    float: none !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
}

/* Page spacing */
.woocommerce-account #main-content .container {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
}

/* Page title */
.woocommerce-account h1,
.woocommerce-account .entry-title {
    font-size: 56px !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    color: #293d62 !important;
    margin-bottom: 34px !important;
}

/* Main account wrapper */
.woocommerce-account .woocommerce {
    display: grid !important;
    grid-template-columns: 280px 1fr !important;
    gap: 32px !important;
    align-items: start !important;
}

/* Left navigation */
.woocommerce-account .woocommerce-MyAccount-navigation {
    width: 100% !important;
    float: none !important;
    background: #fff !important;
    border: 1px solid #eadfca !important;
    border-radius: 24px !important;
    padding: 18px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.04) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    margin: 0 0 8px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
    margin-bottom: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: block !important;
    padding: 14px 18px !important;
    border-radius: 14px !important;
    color: #293d62 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all .2s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
    background: #faf8f3 !important;
    color: #b8913f !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a {
    background: linear-gradient(135deg, #c9a24a, #b8913f) !important;
    color: #fff !important;
    box-shadow: 0 10px 20px rgba(201,162,74,0.22) !important;
}

/* Right content area */
.woocommerce-account .woocommerce-MyAccount-content {
    width: 100% !important;
    float: none !important;
    background: #fff !important;
    border: 1px solid #eadfca !important;
    border-radius: 24px !important;
    padding: 30px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.04) !important;
}

/* Content typography */
.woocommerce-account .woocommerce-MyAccount-content p {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #5c6575 !important;
}

.woocommerce-account .woocommerce-MyAccount-content a {
    color: #b8913f !important;
    font-weight: 600 !important;
}

/* Tables */
.woocommerce-account table.shop_table {
    border: 1px solid #eadfca !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    box-shadow: none !important;
}

.woocommerce-account table.shop_table th {
    background: #faf8f3 !important;
    color: #293d62 !important;
    font-weight: 700 !important;
}

.woocommerce-account table.shop_table td,
.woocommerce-account table.shop_table th {
    padding: 16px !important;
}

/* Buttons */
.woocommerce-account .button,
.woocommerce-account .woocommerce-Button {
    border: none !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #c9a24a, #b8913f) !important;
    color: #fff !important;
    font-weight: 700 !important;
    padding: 12px 22px !important;
    box-shadow: 0 10px 22px rgba(201,162,74,0.22) !important;
}

.woocommerce-account .button:hover,
.woocommerce-account .woocommerce-Button:hover {
    transform: translateY(-1px);
}

/* Forms */
.woocommerce-account input.input-text,
.woocommerce-account textarea,
.woocommerce-account select {
    height: 50px !important;
    border-radius: 14px !important;
    border: 1px solid #e5dac6 !important;
    background: #faf8f3 !important;
    padding: 0 16px !important;
}

.woocommerce-account textarea {
    height: auto !important;
    min-height: 120px !important;
    padding: 14px 16px !important;
}

/* Mobile */
@media (max-width: 980px) {
    .woocommerce-account .woocommerce {
        grid-template-columns: 1fr !important;
    }

    .woocommerce-account h1,
    .woocommerce-account .entry-title {
        font-size: 42px !important;
    }
}

@media (max-width: 767px) {
    .woocommerce-account h1,
    .woocommerce-account .entry-title {
        font-size: 34px !important;
        margin-bottom: 24px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content,
    .woocommerce-account .woocommerce-MyAccount-navigation {
        padding: 18px !important;
        border-radius: 18px !important;
    }
}
/* =========================================================
   MY ACCOUNT LAYOUT FIX
   ========================================================= */

/* force 2-column layout wrapper */
.woocommerce-account .woocommerce {
    display: grid !important;
    grid-template-columns: 280px minmax(0, 1fr) !important;
    gap: 32px !important;
    align-items: start !important;
}

/* left nav fixed width */
.woocommerce-account .woocommerce-MyAccount-navigation {
    grid-column: 1 !important;
    width: 280px !important;
    max-width: 280px !important;
    min-width: 280px !important;
    float: none !important;
    margin: 0 !important;
}

/* right content full remaining width */
.woocommerce-account .woocommerce-MyAccount-content {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    margin: 0 !important;
    display: block !important;
}

/* remove any extra width rules from Woo/Divi */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
    clear: none !important;
}

/* dashboard intro text better spacing */
.woocommerce-account .woocommerce-MyAccount-content p:first-child {
    margin-top: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-content p {
    margin-bottom: 16px !important;
}

/* mobile stack */
@media (max-width: 980px) {
    .woocommerce-account .woocommerce {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        grid-column: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        grid-column: auto !important;
    }
}
/* =========================================================
   MY ACCOUNT — ORDERS / EMPTY STATE POLISH
   ========================================================= */

/* content card spacing */
.woocommerce-account .woocommerce-MyAccount-content {
    color: #5c6575 !important;
}

/* orders table / content block */
.woocommerce-account .woocommerce-MyAccount-content table.shop_table,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-notices-wrapper + * {
    width: 100% !important;
}

/* empty orders / info notice */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 18px 20px !important;
    background: #fffdf9 !important;
    border: 1px solid #eadfca !important;
    border-radius: 18px !important;
    color: #5c6575 !important;
    box-shadow: none !important;
}

/* remove default top border accent */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message::before {
    color: #c9a24a !important;
    top: 18px !important;
}

/* clearer text */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a:not(.button),
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message a:not(.button) {
    color: #5c6575 !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
}

/* browse products button */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button.button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 48px !important;
    padding: 12px 22px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #c9a24a, #b8913f) !important;
    color: #fff !important;
    border: none !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-shadow: 0 10px 22px rgba(201,162,74,0.22) !important;
    opacity: 1 !important;
}

/* orders table polish */
.woocommerce-account table.shop_table {
    background: #fff !important;
    border: 1px solid #eadfca !important;
    border-radius: 18px !important;
    overflow: hidden !important;
}

.woocommerce-account table.shop_table thead th {
    background: #faf8f3 !important;
    color: #293d62 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
}

.woocommerce-account table.shop_table td {
    color: #5c6575 !important;
}

.woocommerce-account table.shop_table td .button {
    padding: 10px 16px !important;
    font-size: 14px !important;
}

/* mobile */
@media (max-width: 767px) {
    .woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
    .woocommerce-account .woocommerce-MyAccount-content .woocommerce-message {
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
    .woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button {
        width: 100% !important;
    }
}