/*
Theme Name: Astra Child
Template: astra
Author: Child Theme Configurator
Version: 1.0.27
*/

/* 1. GLOBAL VARIABLES & CORE WRAPPERS */
:root {
    --woo-fallback-bg: #fdfdfd;
    --qatar-green: #4cb255;
    --sale-red: #ff0000;
}
.elementor a{
	color: black; 
}

html body.woocommerce-page, 
html body.woocommerce-page #page, 
html body.woocommerce-page #content {
    background-color: var(--woo-fallback-bg) !important;
}

body {
    padding-top: 120px !important;
    background: #fdfdfd !important;
}

.site-main .entry-content, 
.site-main .woocommerce-content-area {
    background-color: transparent !important;
}

/* 2. HEADER, NAVIGATION & NOTICES */
header#masthead.site-header {
    position: fixed !important;
    top: 40px !important;
    height: 80px !important;
    width: 100% !important;
    z-index: 9999 !important;
}

body.admin-bar .free_delivery_bar {
    top: 30px !important;
}

.free_delivery_bar {
    top: 0 !important;
    z-index: 99999 !important;
}

#ast-hf-menu-1 {
    display: flex !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
}

.ast-main-header-bar-alignment, 
.main-header-bar-navigation, 
.ast-header-woo-cart {
    display: flex !important;
    align-items: center !important;
}

.woocommerce-message {
    background-color: var(--qatar-green) !important;
    color: white !important;
}

.woocommerce-error a {
    color: var(--sale-red) !important;
}

.ast-header-break-point .ast-mobile-header-wrap .ast-flex.stack-on-mobile {    
	flex-wrap: wrap;
  text-align: center;
}

/* 3. PRODUCT ARCHIVE GRID (SHOP PAGE) */
.ast-separate-container .woocommerce ul.products, 
.ast-separate-container.woocommerce-page ul.products {
    column-gap: 40px !important;
}

.ast-separate-container.woocommerce-page ul.products.columns-3 {
    display: grid !important;
    column-gap: 80px !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
}

.astra-shop-summary-wrap {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

.woocommerce ul.products li.product a img, 
.woocommerce-page ul.products li.product a img {
    width: 500px !important;
    justify-self: center !important;
    border-radius: 30px !important;
}

.astra-shop-summary-wrap .price {
    margin-top: auto !important;
    text-align: center !important;
    font-size: 20px !important;
}

.woocommerce-loop-product__title, 
.ast-woo-shop-product-description {
    text-align: center !important;
}

.woocommerce ul.products li.product .price, 
.woocommerce div.product p.price, 
.woocommerce-page ul.products li.product .price {
    font-size: 18px !important;
}

.woocommerce ul.products li.product.tablet-align-left .button,
.woocommerce-page ul.products li.product.tablet-align-left .button {
    font-size: 1rem !important;
    width: 70% !important;
    background-color: green !important;
	align-self: center;
	text-align: center;
}

.woocommerce ul.products li.product.tablet-align-left .button:hover,
.woocommerce-page ul.products li.product.tablet-align-left .button:hover 
{
    color: white !important; 
}

.ast-on-card-button.ast-onsale-card {
    background-color: var(--sale-red) !important;
    color: #fff !important;
    padding: 4px 12px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    border-radius: 50px !important;
    top: 15px !important;
    left: 15px !important;
}

/* 4. PRODUCT CATEGORY CARDS (STUCK TO BOTTOM FIX) */
.woocommerce-js ul.products li.product .woocommerce-loop-category__title, .woocommerce-page ul.products li.product {
	bottom: 0;
}

.ast-woo-shop-archive .woocommerce ul.products li.product-category,
.woocommerce-page ul.products li.product-category {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 15px !important;
}

.ast-woo-shop-archive .woocommerce ul.products li.product-category a,
.woocommerce-page ul.products li.product-category a {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    align-items: center !important;
}

.ast-woo-shop-archive .woocommerce ul.products li.product-category a,
.woocommerce-page ul.products li.product-category a {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    height: auto !important;
    position: relative !important;
}

.ast-separate-container .woocommerce-page ul.products li.product-category a .woocommerce-loop-category__title,
.woocommerce-page ul.products li.product-category a h2.woocommerce-loop-category__title {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    background: transparent !important;
    margin: 15px 0 5px 0 !important; 
    padding: 0 !important;
    width: 100% !important;
    display: block !important;
    order: 2 !important; 
}

html body.woocommerce-page ul.products li.product-category a .subcat-grid-desc {   
    display: block !important;
    position: relative !important;
    order: 3 !important; 
    margin-top: 10px !important; 
    font-size: 0.9rem !important;
    color: #555 !important;
    font-weight: normal !important;
    text-align: center !important;
    line-height: 1.4 !important;
    white-space: pre-line !important;
    text-decoration: none !important;
}

mark {
	display:none !important;
}

/* 5. SINGLE PRODUCT PAGE TWEAKS */
.single-product .product_title {
    display: block !important;
}

.summary.entry-summary {
    display: flex !important;
    flex-direction: column !important;
}

.summary.entry-summary .variations_form {
    margin-top: 20px !important;
    order: 99 !important;
}

.summary.entry-summary .price {
    margin-top: 0 !important;
    margin-bottom: 5px !important;
    line-height: 1.2 !important;
}

.zoomImg {
    width: 1150px !important;
    height: auto !important;
}

/* 6. PROMO BOXES & BUNDLE BUTTONS */
.discount-box {
    border: 2px solid #000 !important;
    border-radius: 10px !important;
    padding: 3% !important;
    background-color: #fff547 !important;
    margin-bottom: 20px !important;
    width: fit-content !important;
    max-width: 90% !important;
}

.bundle-buttons-container {
    display: flex !important;
    column-gap: 10% !important;
    width: 100% !important;
    justify-content: center !important;
}

.bundle-btn {
    border-radius: 10px !important;
    padding: 3% !important;
    background-color: white !important;
    color: black !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.12) !important;
}

/* 7. CUSTOM FORM FIELDS & DROPDOWNS */
select.color-count-dropdown {
    width: fit-content !important;
    min-width: 300px !important;
    margin-bottom: 15px !important;
}

div.color-checkbox-group {
    display: none;
    margin-top: 20px !important;
    padding: 15px !important;
    background: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 10px !important;
}

/* 8. MEDIA QUERIES (RESPONSIVENESS) */

/* On all screens, ensure the products don't "bleed" or overlap */
.custom-responsive-grid ul.products {
    display: grid !important;
    column-gap: 20px;
}

/* MOBILE (Up to 544px) */
@media (max-width: 544px) {
    .custom-responsive-grid ul.products, .ast-container .woocommerce ul.products:not(.elementor-grid), .woocommerce-page ul.products:not(.elementor-grid), .woocommerce.mobile-columns-2 ul.products:not(.elementor-grid), .woocommerce-page.mobile-columns-2 ul.products:not(.elementor-grid) {
        grid-template-columns: repeat(1, 1fr) !important; /* 2 columns for phones */
    }
}

/* TABLET / MID-SIZE (545px to 921px) */
@media (min-width: 545px) and (max-width: 921px) {
    .custom-responsive-grid ul.products, .ast-container .woocommerce ul.products:not(.elementor-grid), .woocommerce-page ul.products:not(.elementor-grid), .woocommerce.mobile-columns-2 ul.products:not(.elementor-grid), .woocommerce-page.mobile-columns-2 ul.products:not(.elementor-grid) {
        grid-template-columns: repeat(2, 1fr) !important; 
    }
}

/* DESKTOP (922px and up) */
@media (min-width: 922px) {
    .custom-responsive-grid ul.products {
        display: grid !important;
    }
}


/* 9. CART */
/* Remove Update Cart button */
.woocommerce #content table.cart td.actions, .woocommerce table.cart td.actions, .woocommerce-page #content table.cart td.actions, .woocommerce-page table.cart td.actions {
    display: none;
}
.woocommerce-cart-form .product-name a{
	color: black;
}

.woocommerce-js table.shop_table .product-thumbnail img, .woocommerce-page table.shop_table .product-thumbnail img {
    width: auto;
    max-width: 200px;
}

/* 10. ORDER PAGES */
.woocommerce-terms-and-conditions-link woocommerce-terms-and-conditions-link--open{
	color:green;
}
.woocommerce-order {
	margin-top: 70px;
}

/* EXTRAS */
.img.wp-smiley, img.emoji {
    animation: floating 1.1s ease-in-out infinite;
}

@keyframes floating {
    0% { transform: scale(1); }
    50% { transform: scale(1.06); }
    100% { transform: scale(1); }
}

#ast-scroll-top{
	  display: none;
    position: fixed;
    text-align: center;
    cursor: pointer;
    z-index: 99;
    width: 2.5em;
    height: 2.5em;
    line-height: 2.5;
    color: #ffffff;
    border-radius: 2px;
    content: "";
    outline: inherit;
}

.elementor a {
color: #00825c;
}

.woocommerce form .form-row label.checkbox, .woocommerce-page form .form-row label.checkbox {
	line-height:1;
}