.elementor-32 .elementor-element.elementor-element-140f2d2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-32 .elementor-element.elementor-element-f9724c2{text-align:center;}.elementor-32 .elementor-element.elementor-element-f9724c2 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:48px;font-weight:700;-webkit-text-stroke-color:#000;stroke:#000;color:#000000;}.elementor-32 .elementor-element.elementor-element-8ff6b99{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-32 .elementor-element.elementor-element-8ff6b99:not(.elementor-motion-effects-element-type-background), .elementor-32 .elementor-element.elementor-element-8ff6b99 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}/* Start custom CSS for shortcode, class: .elementor-element-8d79d3d *//* ------------------------------------------- */
/* 0. FONT IMPORT (Ensure Montserrat is available) */
/* ------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap');

/* ------------------------------------------- */
/* 1. BASE GRID SETUP (Requires "ebook-store-grid" class on Elementor container) */
/* ------------------------------------------- */
.ebook-store-grid {
    padding: 30px 0;
    font-family: 'Montserrat', sans-serif !important;
    color: #333333;
    /* Use a light gray background to make the cards pop off the page */
    background-color: #f7f7f7; 
}
.ebook-store-grid .edd_downloads_list {
    display: grid; 
    grid-template-columns: repeat(2, 1fr);
    /* Increased gap for visual breathing room */
    gap: 40px; 
    list-style: none;
    padding: 0;
    margin: 0 auto;
    max-width: 1100px; /* Optional: Constrain width for large screens */
}

/* ------------------------------------------- */
/* 2. PREMIUM CARD STYLING */
/* ------------------------------------------- */
.ebook-store-grid .edd_download {
    background-color: #ffffff; 
    border: 1px solid #f0f0f0; /* Subtle border */
    border-radius: 16px;
    padding: 35px 30px; /* Increased top/bottom padding */
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08); /* Stronger but soft shadow */
    transition: all 0.3s ease-in-out;
    display: flex; 
    flex-direction: column; 
    text-align: center;
}

.ebook-store-grid .edd_download:hover {
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12); 
    transform: translateY(-8px); /* More pronounced lift */
}

/* ------------------------------------------- */
/* 3. IMAGE FIX & SIZING (Assumes you fixed the thumbnail aspect ratio) */
/* ------------------------------------------- */

/* Container around the image: ensure no height is set */
.ebook-store-grid .edd_download_image {
    margin-bottom: 25px;
    height: auto !important;
    max-height: unset !important;
    overflow: visible !important;
    /* Remove any alignment issues */
    line-height: 0; 
}

/* THE MOST AGGRESSIVE SELECTOR FOR THE IMAGE TAG */
.ebook-store-grid .edd_download_image img {
    max-width: 80% !important;
    width: auto !important; 
    height: auto !important; 
    max-height: unset !important; 
    
    border-radius: 8px; /* Slightly more subtle radius on the image itself */
    display: block !important; 
    margin: 0 auto;
    object-fit: contain !important; /* Ensures the whole image is visible */
    padding: 10px; /* Add internal padding to help separate image from card edges */
}


/* ------------------------------------------- */
/* 4. TYPOGRAPHY AND BUTTONS */
/* ------------------------------------------- */

/* Title */
.ebook-store-grid .edd_download_title {
    font-family: 'Montserrat', sans-serif !important; 
    font-size: 1.8rem;
    font-weight: 700; 
    color: #333333; 
    margin-bottom: 10px;
    line-height: 1.3;
}

/* Description (5-line limit for desktop alignment) */
.ebook-store-grid .edd_download_excerpt {
    font-family: 'Montserrat', sans-serif !important; 
    font-size: 16px; /* Slightly smaller text */
    color: #555555; /* Softer text color */
    
    flex-grow: 1; 
    overflow: hidden; 
    display: -webkit-box;
    -webkit-line-clamp: 5; 
    -webkit-box-orient: vertical;
    text-overflow: ellipsis; 
    margin-bottom: 20px;
    line-height: 1.5;
}

/* Price */
.edd_price {
    font-family: 'Montserrat', sans-serif !important; 
    font-size: 1.5rem;
    font-weight: 700;
    color: #007bff; /* Primary blue for price */
    margin-bottom: 15px;
    display: block; 
}

/* Button Styling */
.ebook-store-grid .edd_download_buy_button {
    margin-top: auto; 
    width: 100%; 
}

.ebook-store-grid .edd_download_buy_button .edd-submit {
    background-color: #007bff; 
    color: #ffffff;
    border: none;
    border-radius: 6px;
    padding: 14px 25px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px; /* Tighter letter spacing */
    transition: background-color 0.3s ease, transform 0.3s ease;
    box-shadow: 0 4px 10px rgba(0, 123, 255, 0.4); 
    font-family: 'Montserrat', sans-serif !important; 
    font-size: 16px;
}

.ebook-store-grid .edd_download_buy_button .edd-submit:hover {
    background-color: #0056b3; 
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0, 123, 255, 0.6);
}

/* ------------------------------------------- */
/* 5. MOBILE RESPONSIVENESS (< 768px) */
/* ------------------------------------------- */
@media (max-width: 767px) {
    /* Single column stack */
    .ebook-store-grid .edd_downloads_list {
        grid-template-columns: 1fr; 
        gap: 25px;
    }
    .ebook-store-grid .edd_download {
        padding: 20px; 
    }

    /* Description Fix: SHOW FULL TEXT */
    .ebook-store-grid .edd_download_excerpt {
        display: block !important; 
        -webkit-line-clamp: unset !important;
        -webkit-box-orient: unset !important;
        text-overflow: unset !important;
        overflow: visible !important;
        height: auto !important; 
    }

    /* Smaller text sizes for mobile */
    .ebook-store-grid .edd_download_title {
        font-size: 1.4rem; 
    }
    .edd_price {
        font-size: 1.3rem; 
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8ff6b99 *//* ------------------------------------------- */
/* 0. FONT IMPORT (Ensure Montserrat is available) */
/* ------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap');

/* ------------------------------------------- */
/* 1. Base Grid Setup (Desktop) */
/* ------------------------------------------- */
.ebook-store-grid {
    padding: 20px 0;
    font-family: 'Montserrat', sans-serif !important; /* Added !important for font */
    color: #333333;
}
.ebook-store-grid .edd_downloads_list {
    display: grid; 
    grid-template-columns: repeat(2, 1fr);
    gap: 40px; 
    list-style: none;
    padding: 0;
    margin: 0;
}

/* ------------------------------------------- */
/* 2. Premium Card Styling (Desktop) */
/* ------------------------------------------- */
.ebook-store-grid .edd_download {
    background-color: #ffffff; 
    border: none;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); 
    transition: all 0.3s ease-in-out;
    display: flex; 
    flex-direction: column; 
    text-align: center;
}

.ebook-store-grid .edd_download:hover {
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15); 
    transform: translateY(-5px); 
}

/* ------------------------------------------- */
/* 3. Content Adjustments (Desktop) */
/* ------------------------------------------- */

/* Image */
.ebook-store-grid .edd_download_image {
    margin-bottom: 25px;
    height: auto !important;
}
.ebook-store-grid .edd_download_image img {
    max-width: 80%;
    height: auto !important;
    width: auto;
    border-radius: 12px;
}

/* Title */
.ebook-store-grid .edd_download_title {
    font-family: 'Montserrat', sans-serif !important; 
    font-size: 1.8rem;
    font-weight: 700; 
    color: #333333; 
    margin-bottom: 15px;
}

/* Description (Desktop: 5-line limit to keep cards aligned) */
.ebook-store-grid .edd_download_excerpt {
    font-family: 'Montserrat', sans-serif !important; 
    font-size: 17px; 
    color: #333333; 
    
    flex-grow: 1; 
    overflow: hidden; 
    display: -webkit-box;
    -webkit-line-clamp: 5; /* DESKTOP LIMIT */
    -webkit-box-orient: vertical;
    text-overflow: ellipsis; 
    margin-bottom: 25px;
    line-height: 1.6;
}

/* Price and Button alignment */
.edd_price {
    font-family: 'Montserrat', sans-serif !important; 
    font-size: 1.4rem;
    font-weight: 600;
    color: #007bff; 
    margin-bottom: 15px;
    display: block; 
}

.ebook-store-grid .edd_download_buy_button {
    margin-top: auto; 
    width: 100%; 
}

.ebook-store-grid .edd_download_buy_button .edd-submit {
    background-color: #007bff; 
    color: #ffffff;
    border: none;
    border-radius: 8px;
    padding: 12px 25px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: background-color 0.3s ease, transform 0.3s ease;
    box-shadow: 0 4px 10px rgba(0, 123, 255, 0.4); 
    font-family: 'Montserrat', sans-serif !important; 
}

.ebook-store-grid .edd_download_buy_button .edd-submit:hover {
    background-color: #0056b3; 
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0, 123, 255, 0.6);
}

/* ------------------------------------------- */
/* 5. MOBILE RESPONSIVENESS (< 768px) */
/* ------------------------------------------- */
@media (max-width: 767px) {
    /* 5a. Card Layout and Spacing */
    .ebook-store-grid .edd_downloads_list {
        grid-template-columns: 1fr; /* Single column stack */
        gap: 30px;
    }
    .ebook-store-grid .edd_download {
        padding: 25px; /* Slightly better spacing on mobile */
    }

    /* 5b. Description Fix: SHOW FULL TEXT */
    .ebook-store-grid .edd_download_excerpt {
        /* Override desktop line clamp to display all content */
        display: block !important; 
        -webkit-line-clamp: unset !important;
        -webkit-box-orient: unset !important;
        text-overflow: unset !important;
        overflow: visible !important;
        height: auto !important; /* Ensure the element height is not restricted */
    }

    /* 5c. Optimize Image and Typography Sizes */
    .ebook-store-grid .edd_download_image img {
        max-width: 90%; /* Make image slightly wider for impact */
    }
    .ebook-store-grid .edd_download_title {
        font-size: 1.5rem; /* Slightly smaller title for mobile */
    }
    .edd_price {
        font-size: 1.2rem; /* Slightly smaller price for mobile */
    }
}/* End custom CSS */