/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* Checkout Styles - DO NOT EDIT!! */
.wc-block-checkout__pickup-options{
    display: none !important;
}

.wc-block-checkout__payment-method{
	display: none !important;
}


.elementor-85 .elementor-element.elementor-element-363953b.elementor-wc-products ul.products li.product {
    background-color: white !important;
    padding: 5px;
    margin: 10px;
    border-radius: 15px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}


h2.woocommerce-loop-product__title { 
    padding-left: 10px;
    padding-right: 10px;
}

a.woocommerce-LoopProduct-link.woocommerce-loop-product__link span.price {
    padding-left: 10px;
    padding-right: 10px;
}

.astra-shop-summary-wrap {
    padding: 15px;
}

.important-callout {
    background: linear-gradient(135deg, #e6f3ff, #f0f8ff);
    border-left: 4px solid #3182ce;
    border-radius: 8px;
    padding: 20px 24px;
    margin-top: 24px;
    position: relative;
}

.callout-icon {
    position: absolute;
    top: 20px;
    left: 24px;
    width: 20px;
    height: 20px;
    background: #3182ce;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 12px;
    font-weight: bold;
}

.callout-content {
    margin-left: 36px;
    font-size: 14px;
    color: #2c5aa0;
}

.callout-content strong {
    color: #1a365d;
}


.howitworks-section {
  transition: transform 0.3s ease; /* smooth animation */
}

.howitworks-section:hover {
  transform: translateY(-5px); /* moves up slightly */
}

.woocommerce form.variations_form .variations td,
.woocommerce-page form.variations_form .variations td {
background-color: transparent !important;
}

.woocommerce form.variations_form .variations th,
.woocommerce-page form.variations_form .variations th {
background-color: transparent !important;
}


/* Generic Modern WooCommerce Pagination */
.woocommerce nav.woocommerce-pagination {
    margin: 48px 0;
    text-align: center;
}

.woocommerce nav.woocommerce-pagination ul {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
    border: none;
    background: none;
}

.woocommerce nav.woocommerce-pagination ul li {
    margin: 0;
    padding: 0;
    border: none;
    background: none;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 8px 12px;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    background: #ffffff;
    color: #6b7280;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
}

/* Hover States */
.woocommerce nav.woocommerce-pagination ul li a:hover {
    border-color: #d1d5db;
    background: #f9fafb;
    color: #374151;
}

/* Current Page - Uses neutral dark color */
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: #374151;
    border-color: #374151;
    color: #ffffff;
}

/* Previous/Next Buttons */
.woocommerce nav.woocommerce-pagination ul li:first-child a,
.woocommerce nav.woocommerce-pagination ul li:last-child a {
    padding: 8px 16px;
    font-weight: 600;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .woocommerce nav.woocommerce-pagination ul {
        gap: 4px;
    }
    
    .woocommerce nav.woocommerce-pagination ul li a,
    .woocommerce nav.woocommerce-pagination ul li span {
        min-width: 36px;
        height: 36px;
        padding: 6px 10px;
        font-size: 13px;
    }
    
    /* Hide some page numbers on mobile */
    .woocommerce nav.woocommerce-pagination ul li:not(:first-child):not(:last-child):not(.current) {
        display: none;
    }
    
    .woocommerce nav.woocommerce-pagination ul li.current,
    .woocommerce nav.woocommerce-pagination ul li:first-child,
    .woocommerce nav.woocommerce-pagination ul li:last-child,
    .woocommerce nav.woocommerce-pagination ul li:nth-child(2),
    .woocommerce nav.woocommerce-pagination ul li:nth-last-child(2) {
        display: block;
    }
}


/* 213 */
/* WooCommerce Category Page - Fixed Flex Layout */



/* Remove default category description and image */
.woocommerce .term-description,
.woocommerce .category-image {
    display: none !important;
}

/* Product Cards as Flex Containers */
.woocommerce ul.products li.product {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.woocommerce ul.products li.product:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1) !important;
    border-color: #d1d5db !important;
}

/* Product Images */
.woocommerce ul.products li.product img {
    transition: transform 0.3s ease !important;
    flex-shrink: 0 !important;
}

.woocommerce ul.products li.product:hover img {
    transform: scale(1.05) !important;
}

/* Product Content Container */
.woocommerce ul.products li.product .woocommerce-loop-product__link {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

/* Product Title */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-weight: 600 !important;
    color: #111827 !important;
    line-height: 1.3 !important;
    padding: 16px 16px 8px 16px !important;
    margin: 0 !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title:hover {
    color: #3b82f6 !important;
}

/* Product Price */
.woocommerce ul.products li.product .price {
    font-weight: 700 !important;
    color: #3b82f6 !important;
    padding: 0 16px 12px 16px !important;
    margin: 0 !important;
}

/* Variation Swatches - Flexible Height */
.cfvsw-shop-variations tr td {
    padding: 0 16px 12px 16px !important;
    margin: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    align-items: flex-start !important;
    flex-grow: 1 !important;
    background: transparent !important;
}

/* Style the "More" Link */
.cfvsw-more-link {
    display: inline-block !important;
    padding: 4px 8px !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 4px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    color: #6b7280 !important;
    text-decoration: none !important;
    background: #f9fafb !important;
    transition: all 0.2s ease !important;
    margin: 2px 0 !important;
}

.cfvsw-more-link:hover {
    border-color: #3b82f6 !important;
    color: #3b82f6 !important;
    background: #f0f9ff !important;
}

/* Add to Cart Button - Always at Bottom */
.woocommerce ul.products li.product .button {
    background: #111827 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
    text-align: center !important;
    margin: 16px !important;
    padding: 10px 12px !important;
    margin-top: auto !important;
    flex-shrink: 0 !important;
}

.woocommerce ul.products li.product .button:hover {
    background: #374151 !important;
    color: #ffffff !important;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .woocommerce ul.products li.product .value.disable-to-select {
        padding: 0 12px 8px 12px !important;
    }
}

@media (max-width: 480px) {
    .woocommerce ul.products li.product .value.disable-to-select {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 0 10px 6px 10px !important;
    }
}

/* Rest of your existing styles... */
.woocommerce span.onsale {
    background: #10b981 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
    font-weight: 500 !important;
    min-width: auto !important;
    min-height: auto !important;
    line-height: 1.2 !important;
    padding: 4px 8px !important;
    top: 12px !important;
    right: 12px !important;
}

.quick-view,
.yith-wcqv-button,
.wc-quick-view-button,
.elementor-quick-view,
[class*="quick-view"] {
    display: none !important;
}

.cfvsw-shop-variations .cfvsw-more-link {
    position: static !important;
}
.cfvsw-swatches-disabled{
    display:none;
}


/*  checkout styling */

/* --- Modern grid layout --- */
.eh-modern-checkout .ehc-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 24px;
}
@media (max-width: 992px) {
  .eh-modern-checkout .ehc-grid {
    grid-template-columns: 1fr;
  }
}

/* --- Cards --- */
.eh-modern-checkout .ehc-card {
  background: #fff;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 6px 24px rgba(0,0,0,.05);
}

/* Headings */
.eh-modern-checkout .ehc-title { margin: 0 0 12px; font-size: 28px; line-height: 1.2; }
.eh-modern-checkout .ehc-h2 { margin: 0 0 14px; font-size: 18px; }

/* Form field cleanup (works with most themes/Hello) */
.eh-modern-checkout .form-row,
.eh-modern-checkout .woocommerce-billing-fields__field-wrapper .form-row,
.eh-modern-checkout .woocommerce-shipping-fields__field-wrapper .form-row {
  margin: 0 0 14px;
}
.eh-modern-checkout input.input-text,
.eh-modern-checkout select,
.eh-modern-checkout textarea {
  width: 100%;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.12);
  background: #fff;
}
.eh-modern-checkout .select2-selection--single {
  height: 44px;
  border-radius: 12px !important;
  border-color: rgba(0,0,0,.12) !important;
}
.eh-modern-checkout .select2-selection__rendered { line-height: 44px !important; padding-left: 12px !important; }
.eh-modern-checkout .select2-selection__arrow { height: 44px !important; }

/* Aside sticky summary */
.eh-modern-checkout .ehc-aside { position: relative; }
.eh-modern-checkout .ehc-aside .ehc-card {
  position: sticky;
  top: 20px;
}

/* Order table tidy */
.eh-modern-checkout table.shop_table {
  border: 0;
  border-collapse: collapse;
  width: 100%;
}
.eh-modern-checkout table.shop_table th,
.eh-modern-checkout table.shop_table td {
  padding: 10px 0;
  border: 0;
}
.eh-modern-checkout table.shop_table tfoot tr th,
.eh-modern-checkout table.shop_table tfoot tr td {
  font-weight: 600;
}

/* Place order button */
.eh-modern-checkout #place_order.button {
  width: 100%;
  padding: 14px 16px;
  border-radius: 12px;
  font-size: 16px;
}

/* Notices & errors inside cards */
.eh-modern-checkout .woocommerce-NoticeGroup,
.eh-modern-checkout .woocommerce-error,
.eh-modern-checkout .woocommerce-info,
.eh-modern-checkout .woocommerce-message {
  border-radius: 12px;
}

/* Spacing between sections */
.eh-modern-checkout .ehc-section + .ehc-section { margin-top: 24px; }

/* woocommerce product table */
/* Clean Modern Table */
.po-table-heading {
    margin: 30px 0 20px;
    font-size: 20px;
    font-weight: 600;
    color: #1f2937;
    padding-bottom: 12px;
    border-bottom: 2px solid #e5e7eb;
}

.po-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
    font-size: 15px;
    line-height: 1.5;
    background: #ffffff;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
}

.po-th-table {
    background: #f8fafc;
    padding: 14px 18px;
    text-align: left;
    font-weight: 500;
    font-size: 13px;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    border-bottom: 1px solid #e2e8f0;
}

.po-td-table {
    padding: 14px 18px;
    border-bottom: 1px solid #f1f5f9;
    color: #334155;
}

.po-td-table:first-child {
    font-weight: 500;
    color: #475569;
    width: 35%;
}

.po-table tbody tr:hover {
    background: #f8fafc;
}

.po-table tr:last-child .po-td-table {
    border-bottom: none;
}

/* Mobile */
@media (max-width: 640px) {
    .po-th-table,
    .po-td-table {
        padding: 12px 14px;
        font-size: 14px;
    }

    .po-td-table:first-child {
        width: 40%;
    }
}

.woocommerce .quantity .qty {
    width: 6em;
    text-align: center;
}