/* Existing Bedtime storefront palette; product copy remains in native widgets. */
.bkf-related-outer-wrapper,.bkf-article-book,.bkf-lead-magnet{color:#2D2D2D;font-family:var(--e-global-typography-text-font-family,"Raleway"),sans-serif;box-sizing:border-box}
.bkf-related-outer-wrapper *,.bkf-article-book *,.bkf-lead-magnet *{box-sizing:border-box}
.bkf-related-outer-wrapper a:focus-visible,.bkf-article-book a:focus-visible,.bkf-lead-magnet :focus-visible,.bkf-buy-now-btn:focus-visible{outline:3px solid #6449A4;outline-offset:4px}
body.single-product{background:#FDF4E6}
body.single-product .elementor-location-single .elementor-element-29c88c5{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding:48px 24px 40px;gap:40px;align-items:flex-start;overflow:visible;box-sizing:border-box}
body.single-product .elementor-location-single .elementor-element-51960e7{width:calc((100% - 40px)*.42);padding:0;min-height:0;align-self:flex-start;justify-content:center;overflow:visible}
body.single-product .elementor-location-single .elementor-element-9cec7f3{width:calc((100% - 40px)*.58);padding:0;gap:22px;min-width:0}
body.single-product .elementor-location-single .elementor-element-22942ec{width:100%;max-width:100%;padding:0;margin:0}
body.single-product .elementor-element-22942ec .woocommerce-product-gallery{width:100%;margin:0;float:none}
body.single-product .elementor-element-22942ec .woocommerce-product-gallery__wrapper{margin:0}
body.single-product .elementor-element-22942ec .woocommerce-product-gallery__image{border-radius:10px;box-shadow:0 12px 36px rgba(0,0,0,.12);overflow:hidden}
body.single-product .elementor-element-22942ec .woocommerce-product-gallery__image img:not(.zoomImg){width:100%;height:auto;border:0;border-radius:10px;display:block}
body.single-product .elementor-location-single .elementor-element-ddc42eb{order:0}
body.single-product .elementor-location-single .elementor-element-d468e64{order:1;padding:0}
body.single-product .elementor-location-single .elementor-element-502accf{order:2}
body.single-product .elementor-location-single .elementor-element-39e29d9{order:3;padding:0;border:0;border-radius:0}
body.single-product .elementor-location-single .elementor-element-be63a3b{order:4;padding:0}
body.single-product .elementor-location-single .elementor-element-4aa4ecc{display:none}
.single-product .bkf-product-format{margin:8px 0 0!important;font-size:14px;font-weight:500;color:#555555;line-height:1.5}
body.single-product .elementor-element-9cec7f3 p{line-height:1.65}
body.single-product .elementor-element-39e29d9 h2{font-family:var(--e-global-typography-primary-font-family,"Baloo Chettan 2"),sans-serif;font-size:27px;line-height:1.2;margin:28px 0 12px;font-weight:700}
body.single-product .elementor-element-39e29d9 h3{font-family:var(--e-global-typography-primary-font-family,"Baloo Chettan 2"),sans-serif;font-size:23px;line-height:1.25;margin:24px 0 12px}
body.single-product .elementor-element-39e29d9 ul{padding-left:24px;line-height:1.65}
body.single-product .elementor-element-39e29d9 li{margin:6px 0}
body.single-product form.cart{display:flex!important;align-items:stretch!important;gap:12px!important;flex-wrap:wrap!important;margin:0!important}
body.single-product form.cart::before,body.single-product form.cart::after{content:none!important;display:none!important}
body.single-product form.cart .single_add_to_cart_button,body.single-product form.cart #bkf-buy-now-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:1 1 0!important;min-width:0!important;max-width:100%!important;min-height:50px!important;height:50px!important;margin:0!important;padding:10px 16px!important;border:0!important;border-radius:14px!important;white-space:nowrap!important;font-family:var(--e-global-typography-primary-font-family,"Baloo Chettan 2"),sans-serif!important;font-weight:700!important;font-size:17px!important;line-height:1.2!important;text-align:center!important;text-decoration:none!important;box-sizing:border-box!important}
body.single-product form.cart #bkf-buy-now-btn{order:0;background:#F8E170!important;color:#2D2D2D!important}
body.single-product form.cart .single_add_to_cart_button{order:1;background:#6449A4!important;color:#FFFFFF!important}
body.single-product form.cart .added_to_cart{flex-basis:100%;order:2}
body.single-product form.cart #bkf-buy-now-btn:hover,.bkf-related-btn-buy:hover,.bkf-article-buy:hover{filter:brightness(.97);color:#2D2D2D}
@media(min-width:1025px){body.single-product .elementor-location-single .elementor-element-51960e7{position:sticky;top:80px}}
@media(min-width:768px) and (max-width:1024px){body.single-product .elementor-location-single .elementor-element-29c88c5{gap:28px}body.single-product .elementor-location-single .elementor-element-51960e7{width:calc((100% - 28px)*.42)}body.single-product .elementor-location-single .elementor-element-9cec7f3{width:calc((100% - 28px)*.58)}body.single-product form.cart{flex-direction:column!important}body.single-product form.cart .single_add_to_cart_button,body.single-product form.cart #bkf-buy-now-btn{flex:none!important;width:100%!important}}
@media(max-width:767.98px){body.single-product .elementor-location-single .elementor-element-29c88c5{flex-direction:column;gap:28px;padding:28px 20px 32px}body.single-product .elementor-location-single .elementor-element-51960e7,body.single-product .elementor-location-single .elementor-element-9cec7f3{width:100%;position:relative;top:auto}body.single-product .elementor-location-single .elementor-element-22942ec{max-width:420px}body.single-product form.cart{flex-direction:column!important;gap:12px!important;width:100%!important}body.single-product form.cart .single_add_to_cart_button,body.single-product form.cart #bkf-buy-now-btn{flex:none!important;width:100%!important}body.single-product .elementor-location-single .elementor-element-9cec7f3{gap:20px}body.single-product .elementor-element-39e29d9 h2{font-size:25px}}
/* Full-bleed cream wrapper continues the product ground through the footer waves. */
.bkf-related-outer-wrapper{width:100%;background:#FDF4E6;padding:20px 24px 60px}
.bkf-related-section{width:100%;max-width:1200px;margin:0 auto;padding:32px;background:#FAEDD8;border-radius:20px}
.bkf-related-section h2{margin:0 0 28px;text-align:center;color:#2D2D2D;font-family:var(--e-global-typography-primary-font-family,"Baloo Chettan 2"),sans-serif;font-size:30px;font-weight:700;line-height:1.2}
.bkf-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.bkf-related-card{display:flex;flex-direction:column;min-width:0;background:#FFFFFF;border-radius:16px;padding:16px;box-shadow:0 5px 18px rgba(100,73,164,.06)}
.bkf-related-img-wrap{display:flex;align-items:center;justify-content:center;height:210px;text-decoration:none}
.bkf-related-img-wrap img{height:100%;width:100%;object-fit:contain;border-radius:8px}
.bkf-related-card h3.bkf-related-title{font-family:var(--e-global-typography-primary-font-family,"Baloo Chettan 2"),sans-serif;font-size:17px;font-weight:700;line-height:1.3;text-align:center;margin:16px 0 12px}
.bkf-related-title a{color:#2D2D2D;text-decoration:none}
.bkf-related-rating{display:flex;justify-content:center;margin-bottom:12px;color:#6449A4}
.bkf-related-price{margin:auto 0 14px;padding-top:8px;text-align:center;font-weight:700;color:#6449A4;font-size:18px}
.bkf-related-btn-buy,.bkf-article-buy{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 16px;border:0;border-radius:14px;background:#F8E170;color:#2D2D2D;text-decoration:none;font-family:var(--e-global-typography-primary-font-family,"Baloo Chettan 2"),sans-serif;font-size:17px;font-weight:700;line-height:1.25;white-space:nowrap;text-align:center}
@media(max-width:1024px){.bkf-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.bkf-related-outer-wrapper{padding:12px 16px 40px}.bkf-related-section{padding:24px 18px}.bkf-related-section h2{font-size:26px}.bkf-related-grid{grid-template-columns:1fr}.bkf-related-img-wrap{height:240px}}
/* Two in-article recommendations and an ending showcase share existing book data. */
.bkf-article-book{display:flex;align-items:center;gap:24px;margin:36px 0;padding:26px;border:1px solid rgba(100,73,164,.3);border-radius:20px;background:#FDF4E6}
.bkf-article-book-image{display:block;flex:0 0 150px;text-align:center}
.bkf-article-book-image img{display:block;width:150px;height:210px;object-fit:contain;margin:0 auto;border-radius:8px}
.bkf-article-book-copy{flex:1;min-width:0}
.bkf-article-book .bkf-article-book-copy h3{margin:0 0 12px;font-family:var(--e-global-typography-primary-font-family,"Baloo Chettan 2"),sans-serif;font-size:24px;line-height:1.2;font-weight:700}
.bkf-article-book-copy h3 a{color:#2D2D2D;text-decoration:none}
.bkf-article-book .bkf-article-book-copy p{margin:0 0 12px;font-size:15px;line-height:1.55;color:#555555}
.bkf-article-book-price{color:#6449A4;font-size:22px;font-weight:700;margin:0 0 14px}
.bkf-post-showcase-box{border:2px solid #6449A4;background:#FAEDD8;padding:30px}
@media(max-width:600px){.bkf-article-book{padding:22px;gap:18px;flex-direction:column;align-items:stretch}.bkf-article-book-image{flex:auto}.bkf-article-book-image img{height:190px}.bkf-article-buy{width:100%;min-height:50px}}
/* Parent offer stays clear of the existing cart launcher. */
.bkf-lead-magnet[hidden],.bkf-lead-magnet [hidden]{display:none!important}
.bkf-lead-magnet{position:fixed;z-index:9990;right:24px;bottom:92px;width:360px;max-width:calc(100vw - 32px);padding:22px;border:2px solid #6449A4;border-radius:20px;background:#FDF4E6;box-shadow:0 8px 28px rgba(100,73,164,.18)}
.bkf-lead-magnet .bkf-lead-close{position:absolute;right:7px;top:7px;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:#6449A4;font-size:26px;line-height:1;cursor:pointer}
.bkf-lead-magnet h2{font-family:var(--e-global-typography-primary-font-family,"Baloo Chettan 2"),sans-serif;font-size:21px;font-weight:700;line-height:1.2;margin:0 20px 8px 0;color:#2D2D2D}
.bkf-lead-magnet .bkf-lead-book-title{font-size:14px;line-height:1.4;margin:0 0 14px;color:#555555}
.bkf-lead-form{display:grid;gap:10px;grid-template-columns:1fr}
.bkf-lead-form input[type=email]{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #6449A4;border-radius:10px;background:#FFFFFF;color:#2D2D2D;font-size:16px}
.bkf-lead-form button[type=submit],.bkf-free-download-link{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 12px;border:0;border-radius:14px;background:#F8E170;color:#2D2D2D;font-family:var(--e-global-typography-primary-font-family,"Baloo Chettan 2"),sans-serif;font-size:17px;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer}
.bkf-lead-form button:disabled{opacity:.65;cursor:wait}
.bkf-lead-honeypot{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.bkf-lead-privacy{display:inline-block;margin-top:10px;font-size:12px;color:#6449A4;text-decoration:underline}
.bkf-lead-result{font-size:14px;line-height:1.4;color:#6449A4}
.bkf-lead-result:not(:empty){margin-top:12px}
@media(max-width:600px){.bkf-lead-magnet{right:16px;bottom:84px;padding:18px}.bkf-lead-magnet h2{font-size:20px}}




/* Hide legacy lone button from Elementor single post template */
.elementor-element-5d47e08 {
    display: none !important;
}

/* Shared Button Styles */
.bkf-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    font-family: var(--e-global-typography-primary-font-family, "Baloo Chettan 2"), sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    padding: 12px 24px !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    transition: all 0.25s ease-in-out;
    cursor: pointer;
    text-align: center;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
}
.bkf-btn-primary {
    background-color: #6449A4 !important;
    color: #FFFFFF !important;
    box-shadow: 0 4px 14px rgba(100, 73, 164, 0.35) !important;
    border: 2px solid #6449A4 !important;
}
.bkf-btn-primary:hover {
    background-color: #4f3685 !important;
    color: #F8E170 !important;
    border-color: #4f3685 !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(100, 73, 164, 0.45) !important;
}
.bkf-btn-secondary {
    background-color: #F8E170 !important;
    color: #2D2D2D !important;
    box-shadow: 0 4px 12px rgba(248, 225, 112, 0.4) !important;
    border: 2px solid #F8E170 !important;
}
.bkf-btn-secondary:hover {
    background-color: #f5d742 !important;
    color: #000000 !important;
    border-color: #f5d742 !important;
    transform: translateY(-2px);
}

/* 1a. First Mid-Article In-Content Banner (After Paragraph 3) */
.bkf-mid-article-cta {
    margin: 35px 0 40px 0;
    padding: 22px 26px;
    background: linear-gradient(135deg, #F8F5FF 0%, #FFFDF5 100%);
    border: 2px solid #E4D8FA;
    border-radius: 18px;
    box-shadow: 0 6px 20px rgba(100, 73, 164, 0.08);
    position: relative;
    box-sizing: border-box;
}
.bkf-mid-badge {
    display: inline-block;
    background-color: #6449A4;
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 12px;
}
.bkf-mid-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}
.bkf-mid-text {
    flex: 1 1 320px;
}
.bkf-mid-text h4 {
    margin: 0 0 8px 0 !important;
    font-size: 20px !important;
    font-family: var(--e-global-typography-primary-font-family, "Baloo Chettan 2"), sans-serif !important;
    color: #2D2D2D !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}
.bkf-mid-text p {
    margin: 0 !important;
    font-size: 15px !important;
    color: #555555 !important;
    line-height: 1.5 !important;
}
.bkf-mid-action {
    flex: 0 0 auto;
}

/* 1b. Second Mid-Article In-Content Banner (9-10 paragraphs before end) */
.bkf-mid-article-cta-2 {
    margin: 35px 0 40px 0;
    padding: 22px 26px;
    background: linear-gradient(135deg, #FFFDF2 0%, #F5F0FF 100%);
    border: 2px solid #E8DFB8;
    border-radius: 18px;
    box-shadow: 0 6px 20px rgba(100, 73, 164, 0.08);
    position: relative;
    box-sizing: border-box;
}
.bkf-mid-badge-2 {
    display: inline-block;
    background-color: #2D2D2D;
    color: #F8E170;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 12px;
}

/* 2. End-of-Post Showcase Box */
.bkf-post-showcase-box {
    margin: 40px 0 30px 0;
    padding: 28px;
    background: #FFFFFF;
    border: 2px solid #6449A4;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(100, 73, 164, 0.12);
    box-sizing: border-box;
}
.bkf-showcase-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 14px;
    margin-bottom: 20px;
    border-bottom: 1px solid #ECE7F6;
    flex-wrap: wrap;
    gap: 10px;
}
.bkf-showcase-badge {
    background-color: #F8E170;
    color: #2D2D2D;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    padding: 5px 14px;
    border-radius: 20px;
}
.bkf-showcase-rating {
    font-size: 14px;
    font-weight: 600;
    color: #6449A4;
}
.bkf-showcase-grid {
    display: flex;
    align-items: center;
    gap: 26px;
    flex-wrap: wrap;
}
.bkf-showcase-media {
    flex: 0 0 160px;
    text-align: center;
}
.bkf-showcase-media img {
    width: 160px !important;
    height: auto !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.15) !important;
    display: block !important;
    transition: transform 0.25s ease;
}
.bkf-showcase-media img:hover {
    transform: scale(1.03);
}
.bkf-showcase-info {
    flex: 1 1 340px;
}
.bkf-showcase-info h3 {
    margin: 0 0 12px 0 !important;
    font-size: 24px !important;
    font-family: var(--e-global-typography-primary-font-family, "Baloo Chettan 2"), sans-serif !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}
.bkf-showcase-info h3 a {
    color: #2D2D2D !important;
    text-decoration: none !important;
}
.bkf-showcase-info h3 a:hover {
    color: #6449A4 !important;
}
.bkf-showcase-bullets {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 18px 0 !important;
}
.bkf-showcase-bullets li {
    position: relative;
    padding-left: 24px !important;
    margin-bottom: 8px !important;
    font-size: 15px !important;
    color: #555555 !important;
    line-height: 1.4 !important;
}
.bkf-showcase-bullets li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #6449A4;
    font-weight: bold;
    font-size: 16px;
}
.bkf-showcase-pricing {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}
.bkf-price-value {
    font-size: 28px;
    font-weight: 800;
    color: #6449A4;
    font-family: var(--e-global-typography-primary-font-family, "Baloo Chettan 2"), sans-serif;
}
.bkf-price-note {
    font-size: 13px;
    color: #595959;
    font-weight: 500;
}

.bkf-age-silo-nav span[style*="#777"] {
    color: #595959 !important;
}
.bkf-showcase-buttons {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

/* Mobile responsive for blog CTA and showcase */
@media (max-width: 767px) {
    .bkf-mid-article-cta,
    .bkf-mid-article-cta-2 {
        margin: 28px 0 !important;
        padding: 20px 18px !important;
        height: auto !important;
        min-height: 0 !important;
        box-sizing: border-box !important;
    }
    .bkf-mid-badge,
    .bkf-mid-badge-2 {
        margin-bottom: 12px !important;
    }
    .bkf-mid-content {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 16px !important;
        height: auto !important;
        min-height: 0 !important;
    }
    .bkf-mid-text {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
    }
    .bkf-mid-text h4 {
        font-size: 19px !important;
        line-height: 1.3 !important;
        margin: 0 0 10px 0 !important;
    }
    .bkf-mid-text p {
        font-size: 14.5px !important;
        line-height: 1.5 !important;
        margin: 0 !important;
    }
    .bkf-mid-action {
        flex: 0 0 auto !important;
        width: 100% !important;
        margin-top: 4px !important;
    }
    .bkf-mid-action .bkf-btn {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        padding: 13px 18px !important;
        font-size: 16px !important;
    }
    .bkf-showcase-grid {
        flex-direction: column;
        text-align: center;
    }
    .bkf-showcase-media {
        margin: 0 auto;
    }
    .bkf-showcase-bullets li {
        text-align: left;
    }
    .bkf-showcase-pricing {
        justify-content: center;
    }
    .bkf-showcase-buttons {
        flex-direction: column;
        width: 100%;
    }
    .bkf-showcase-buttons .bkf-btn {
        width: 100% !important;
    }
}




/* ==========================================================================
   HOMEPAGE CUSTOM CRO & AGE-BASED COMPONENTS (CENTERED & WCAG COMPLIANT)
   ========================================================================== */

/* Full-width container locks and centering */
.elementor-element-sec_browse_by_age_ba658f1,
.elementor-element-sec_how_it_works_304df11,
.elementor-element-sec_mega_bundle_2b6b07a,
.elementor-element-sec_free_gift_a2bf620,
.elementor-element-sec_reassurance_d163d4f {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
}

.elementor-element-sec_browse_by_age_ba658f1 > .elementor-container,
.elementor-element-sec_how_it_works_304df11 > .elementor-container,
.elementor-element-sec_mega_bundle_2b6b07a > .elementor-container,
.elementor-element-sec_free_gift_a2bf620 > .elementor-container,
.elementor-element-sec_reassurance_d163d4f > .elementor-container {
    width: 100% !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    display: flex !important;
    justify-content: center !important;
}

.elementor-element-col_browse_by_age,
.elementor-element-col_how_it_works,
.elementor-element-col_mega_bundle,
.elementor-element-col_free_gift,
.elementor-element-col_reassurance {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
}

.elementor-element-col_browse_by_age > .elementor-widget-wrap,
.elementor-element-col_how_it_works > .elementor-widget-wrap,
.elementor-element-col_mega_bundle > .elementor-widget-wrap,
.elementor-element-col_free_gift > .elementor-widget-wrap,
.elementor-element-col_reassurance > .elementor-widget-wrap {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

/* 1. Hero Dual CTA & Trust Badges (High Contrast) */
.bkf-hero-cta-group {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}
.bkf-hero-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #FFFFFF;
    color: #6449A4;
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 18px;
    font-weight: 700;
    padding: 12px 28px;
    border-radius: 30px;
    text-decoration: none;
    box-shadow: 4px 4px 0px 0px #000000;
    transition: transform 0.2s, background-color 0.2s;
}
.bkf-hero-btn-primary:hover {
    background-color: #F8E170;
    color: #000000;
    transform: translateY(-2px);
}
.bkf-hero-btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #4D3382;
    color: #FFFFFF;
    border: 2px solid #F8E170;
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 18px;
    font-weight: 700;
    padding: 10px 24px;
    border-radius: 30px;
    text-decoration: none;
    transition: all 0.2s;
}
.bkf-hero-btn-secondary:hover {
    background-color: #F8E170;
    color: #6449A4;
    transform: translateY(-2px);
}
.bkf-hero-trust-bar {
    display: flex;
    align-items: center;
    gap: 14px;
    font-family: 'Raleway', sans-serif;
    font-size: 13.5px;
    font-weight: 700;
    color: #FFFFFF;
    flex-wrap: wrap;
}
.bkf-hero-trust-bar span {
    display: inline-flex;
    align-items: center;
    background: #2E1F52;
    padding: 6px 14px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    color: #FFFFFF;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}
@media (max-width: 767px) {
    .bkf-hero-cta-group {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }
    .bkf-hero-btn-primary, .bkf-hero-btn-secondary {
        width: 100%;
        text-align: center;
        padding: 14px 20px;
        box-sizing: border-box;
    }
    .bkf-hero-trust-bar {
        font-size: 12px;
        gap: 10px;
        justify-content: center;
    }
}

/* 2. Browse by Age Section (Centered, High Contrast) */
.bkf-home-age-section {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
    box-sizing: border-box;
}
.bkf-home-age-header {
    margin-bottom: 35px;
}
.bkf-home-age-title {
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 32px;
    font-weight: 700;
    color: #23282d;
    margin: 0 0 10px 0;
}
.bkf-home-age-subtitle {
    font-family: 'Raleway', sans-serif;
    font-size: 16px;
    color: #2D2D2D;
    font-weight: 500;
    max-width: 650px;
    margin: 0 auto;
    line-height: 1.55;
}
.bkf-home-age-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    width: 100%;
    box-sizing: border-box;
}
.bkf-home-age-card {
    background: #FFFFFF;
    border: 2px solid #E8DFD3;
    border-radius: 18px;
    padding: 24px 20px;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    box-shadow: 0 4px 15px rgba(0,0,0,0.04);
    transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s;
    box-sizing: border-box;
}
.bkf-home-age-card:hover {
    transform: translateY(-5px);
    border-color: #6449A4;
    box-shadow: 0 8px 24px rgba(100, 73, 164, 0.12);
}
.bkf-home-age-icon {
    font-size: 40px;
    margin-bottom: 12px;
    line-height: 1;
}
.bkf-home-age-heading {
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #23282d;
    margin: 0 0 8px 0;
    line-height: 1.2;
}
.bkf-home-age-desc {
    font-family: 'Raleway', sans-serif;
    font-size: 14px;
    color: #2D2D2D;
    font-weight: 500;
    line-height: 1.5;
    margin: 0 0 16px 0;
    flex-grow: 1;
}
.bkf-home-age-btn {
    display: inline-block;
    background: #6449A4;
    color: #FFFFFF;
    border: 1px solid #6449A4;
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 13.5px;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 20px;
    transition: all 0.2s;
}
.bkf-home-age-card:hover .bkf-home-age-btn {
    background: #F8E170;
    color: #2D2D2D;
    border-color: #F8E170;
}
@media (max-width: 1024px) {
    .bkf-home-age-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 580px) {
    .bkf-home-age-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .bkf-home-age-title {
        font-size: 26px;
    }
}

/* 3. How It Works Section (Centered, High Contrast) */
.bkf-how-it-works-wrap {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    text-align: center;
    box-sizing: border-box;
}
.bkf-how-title {
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 30px;
    font-weight: 700;
    color: #23282d;
    margin: 0 0 10px 0;
}
.bkf-how-subtitle {
    font-family: 'Raleway', sans-serif;
    font-size: 16px;
    color: #2D2D2D;
    font-weight: 500;
    margin: 0 auto 35px auto;
    max-width: 550px;
    line-height: 1.55;
}
.bkf-how-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    width: 100%;
    box-sizing: border-box;
}
.bkf-how-step {
    background: #FDF4E6;
    border-radius: 16px;
    padding: 30px 24px;
    text-align: center;
    border: 1px solid #E8DFD3;
    box-sizing: border-box;
}
.bkf-how-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: #6449A4;
    color: #FFFFFF;
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 20px;
    font-weight: 700;
    border-radius: 50%;
    margin-bottom: 16px;
}
.bkf-how-step-title {
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #23282d;
    margin: 0 0 8px 0;
}
.bkf-how-step-desc {
    font-family: 'Raleway', sans-serif;
    font-size: 14.5px;
    color: #2D2D2D;
    font-weight: 500;
    line-height: 1.55;
    margin: 0;
}
@media (max-width: 767px) {
    .bkf-how-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}

/* 4. Mega Bundle Spotlight Banner (Centered, High Contrast) */
.bkf-bundle-banner {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    background: linear-gradient(135deg, #6449A4 0%, #4D3382 100%);
    border-radius: 24px;
    padding: 40px;
    color: #FFFFFF;
    display: flex;
    align-items: center;
    gap: 35px;
    box-shadow: 0 10px 30px rgba(100, 73, 164, 0.25);
    box-sizing: border-box;
}
.bkf-bundle-img-col {
    flex: 0 0 300px;
    text-align: center;
}
.bkf-bundle-img-col img {
    max-width: 100%;
    height: auto;
    border-radius: 16px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.3);
    border: 3px solid #F8E170;
}
.bkf-bundle-content-col {
    flex: 1;
}
.bkf-bundle-badge {
    display: inline-block;
    background: #F8E170;
    color: #000000;
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 13px;
    font-weight: 800;
    padding: 4px 14px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
}
.bkf-bundle-title {
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 32px;
    font-weight: 700;
    color: #FFFFFF;
    margin: 0 0 12px 0;
    line-height: 1.2;
}
.bkf-bundle-desc {
    font-family: 'Raleway', sans-serif;
    font-size: 15.5px;
    color: #FFFFFF;
    line-height: 1.6;
    margin: 0 0 20px 0;
}
.bkf-bundle-pricing {
    display: flex;
    align-items: baseline;
    gap: 14px;
    margin-bottom: 22px;
    flex-wrap: wrap;
}
.bkf-bundle-price-now {
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 38px;
    font-weight: 800;
    color: #F8E170;
}
.bkf-bundle-price-was {
    font-family: 'Raleway', sans-serif;
    font-size: 20px;
    color: #FFFFFF;
    opacity: 0.85;
    text-decoration: line-through;
    font-weight: 600;
}
.bkf-bundle-pill-badge {
    display: inline-flex;
    align-items: center;
    background: #3A2A66;
    color: #FFFFFF;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12.5px;
    font-weight: 700;
    border: 1px solid rgba(255, 255, 255, 0.3);
}
.bkf-bundle-btn {
    display: inline-flex;
    align-items: center;
    background: #F8E170;
    color: #000000;
    font-family: 'Baloo Chettan 2', sans-serif;
    font-size: 18px;
    font-weight: 800;
    padding: 12px 30px;
    border-radius: 30px;
    text-decoration: none;
    box-shadow: 4px 4px 0px 0px #000000;
    transition: transform 0.2s, background-color 0.2s;
}
.bkf-bundle-btn:hover {
    background: #FFFFFF;
    color: #6449A4;
    transform: translateY(-2px);
}
@media (max-width: 900px) {
    .bkf-bundle-banner {
        flex-direction: column;
        padding: 30px 20px;
        text-align: center;
    }
    .bkf-bundle-img-col {
        flex: 0 0 auto;
        max-width: 240px;
        margin: 0 auto;
    }
    .bkf-bundle-pricing {
        justify-content: center;
    }
    .bkf-bundle-title {
        font-size: 26px;
    }
    .bkf-bundle-btn {
        width: 100%;
        justify-content: center;
        box-sizing: border-box;
        white-space: nowrap;
        font-size: 16.5px;
        padding: 12px 16px;
    }
}

/* 5. Pre-Footer Reassurance Bar (Centered, High Contrast) */
.bkf-reassurance-bar {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    display: flex;
    justify-content: space-around;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    font-family: 'Raleway', sans-serif;
    font-size: 14.5px;
    font-weight: 700;
    color: #222222;
    box-sizing: border-box;
}
.bkf-reassurance-item {
    display: flex;
    align-items: center;
    gap: 10px;
}
.bkf-reassurance-icon {
    font-size: 20px;
}
.bkf-reassurance-bar a {
    color: #6449A4 !important;
    text-decoration: underline !important;
    font-weight: 700 !important;
}
@media (max-width: 767px) {
    .bkf-reassurance-bar {
        flex-direction: column;
        align-items: center;
        gap: 14px;
        text-align: center;
    }
    .bkf-reassurance-item {
        justify-content: center;
        width: 100%;
    }
}

/* Accessibility & Contrast Fixes */
.elementor-post-date, time, .elementor-post-info__item {
    color: #2D2D2D !important;
    font-weight: 600 !important;
}
.elementor-widget-theme-post-excerpt {
    color: #2D2D2D !important;
    line-height: 1.6 !important;
}
/* Accessibility Main Landmark */
main#content {
    display: block;
    width: 100%;
    outline: none;
}

/* Hero Eyebrow High Contrast */
.bkf-hero-eyebrow {
    display: inline-block;
    background: #1F1433 !important;
    color: #FFFFFF !important;
    padding: 6px 18px !important;
    border-radius: 30px !important;
    font-family: var(--e-global-typography-primary-font-family, 'Baloo Chettan 2'), sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25) !important;
}

/* Admin bar container alignment safeguards */
body.admin-bar .elementor-container {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Floating lead modal high-contrast text */
.bkf-lead-magnet .bkf-lead-book-title {
    color: #2D2D2D !important;
}
.bkf-lead-privacy {
    color: #4D3382 !important;
}

/* Cart count badge contrast */
.elementor-menu-cart__toggle_button .elementor-button-icon-qty,
.elementor-button-icon-qty {
    background-color: #B3261E !important;
    color: #FFFFFF !important;
}

/* Mobile polish for homepage CRO sections */
@media (max-width: 600px) {
    .bkf-inline-lead-box {
        padding: 24px 18px !important;
        margin: 28px auto !important;
    }
    .bkf-inline-lead-box h3 {
        font-size: 22px !important;
    }
    .bkf-inline-lead-form {
        flex-direction: column;
    }
    .bkf-inline-lead-form button[type="submit"] {
        width: 100%;
    }
    .bkf-home-age-card {
        padding: 20px 16px;
    }
    .bkf-how-step {
        padding: 24px 18px;
    }
}

@media (max-width: 480px) {
    .bkf-lead-magnet {
        right: 12px;
        left: 12px;
        bottom: 92px;
        width: auto;
        max-width: none;
    }
    .bkf-bundle-title {
        font-size: 23px;
    }
    .bkf-bundle-price-now {
        font-size: 32px;
    }
    .bkf-bundle-btn {
        font-size: 15.5px;
    }
}

/* Loop grid "Load More" button contrast */
.e-loop__load-more .elementor-button,
.e-loop__load-more .elementor-button .elementor-button-text {
    color: #FFFFFF !important;
}

/* Moral Stories hub page (post 5439) */
body.page-id-5439 {
    background-color: #FDF4E6;
}
body.page-id-5439 .page-header {
    max-width: 1100px;
    margin: 0 auto;
    padding: 48px 20px 0;
    text-align: center;
    background: transparent;
    border: 0;
}
body.page-id-5439 .page-header .entry-title {
    font-family: 'Baloo Chettan 2', var(--e-global-typography-primary-font-family, sans-serif);
    font-size: 42px;
    font-weight: 700;
    color: #23282d;
    line-height: 1.15;
    margin: 0;
}
body.page-id-5439 .page-content {
    max-width: 1100px;
    margin: 0 auto;
    padding: 24px 20px 64px;
    font-family: 'Raleway', var(--e-global-typography-text-font-family, sans-serif);
    color: #2D2D2D;
    font-size: 16px;
    line-height: 1.65;
}
body.page-id-5439 .bkf-hub-intro {
    font-size: 18px;
    line-height: 1.6;
    max-width: 820px;
    margin: 0 auto 18px;
    text-align: center;
}
body.page-id-5439 .bkf-hub-section {
    background: #FFFFFF;
    border: 1px solid #E8DFD3;
    border-radius: 20px;
    padding: 28px 32px;
    margin: 26px 0;
    box-shadow: 0 4px 15px rgba(100, 73, 164, 0.05);
}
body.page-id-5439 .bkf-hub-section h2 {
    font-family: 'Baloo Chettan 2', var(--e-global-typography-primary-font-family, sans-serif);
    font-size: 26px;
    font-weight: 700;
    color: #23282d;
    line-height: 1.2;
    margin: 0 0 14px;
}
body.page-id-5439 .bkf-hub-section p {
    margin: 0 0 14px;
}
body.page-id-5439 .bkf-hub-section ul,
body.page-id-5439 .bkf-hub-section ol {
    margin: 0;
    padding-left: 24px;
}
body.page-id-5439 .bkf-hub-section li {
    margin: 9px 0;
    line-height: 1.55;
}
body.page-id-5439 .page-content a {
    color: #6449A4;
    font-weight: 600;
    text-decoration: underline;
}
body.page-id-5439 .page-content a:hover {
    color: #4D3382;
}
@media (max-width: 600px) {
    body.page-id-5439 .page-header {
        padding: 32px 16px 0;
    }
    body.page-id-5439 .page-header .entry-title {
        font-size: 30px;
    }
    body.page-id-5439 .page-content {
        padding: 18px 16px 48px;
    }
    body.page-id-5439 .bkf-hub-section {
        padding: 22px 18px;
        border-radius: 16px;
    }
    body.page-id-5439 .bkf-hub-section h2 {
        font-size: 22px;
    }
    body.page-id-5439 .bkf-hub-intro {
        font-size: 16.5px;
    }
}