/* ========================================
   STELLA LUMEN – FULL POLISHED CSS
   (Targets .wc-backward – No more duplicates)
   ======================================== */
/* ---------- 1. HEADER & LOGO ---------- */
.ast-header {
    position: relative;
    background-color: #000000 !important;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
}
.ast-header .site-logo,
.ast-primary-header-bar .site-logo {
    background-image: url('https://stella-lumen.com/wp-content/uploads/2025/10/Logo.png') !important;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 100%;
    max-width: 500px;
    max-height: 120px;
    margin: 0 auto;
    border: none;
    box-shadow: 0 4px 15px rgba(128, 0, 32, 0.4);
    transition: transform 0.3s ease;
}
.ast-header .site-logo:hover { transform: scale(1.02); }
.ast-header .site-title,
.ast-header .site-description,
.ast-header .ast-logo-title { display: none !important; }
/* ---------- 2. FOOTER LOGO ---------- */
.site-footer {
    background-color: #000000 !important;
    color: #FFFFFF !important;
    padding: 20px 0;
}
.site-footer .footer-logo {
    background-image: url('https://stella-lumen.com/wp-content/uploads/2025/10/Logo.png') !important;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right center;
    width: 200px;
    height: 60px;
    float: right;
    margin: 0 20px 0 0;
    box-shadow: 0 2px 8px rgba(128, 0, 32, 0.3);
    cursor: pointer;
}
.site-footer .footer-logo:hover { transform: scale(1.05); }
.site-footer .footer-logo:active { transform: translateY(2px); }
/* ---------- 3. MENU STYLING ---------- */
.ast-primary-menu { margin-top: 10px; }
.ast-primary-menu a { color: #DAA520 !important; }
.ast-primary-menu a:hover { color: #800020 !important; }
.main-navigation a,
.primary-navigation a,
nav ul li a {
    font-size: 18px !important;
    font-weight: 500;
    letter-spacing: 1.5px;
}
.main-navigation ul li,
.primary-navigation ul li,
nav ul .menu-item {
    padding-right: 25px !important;
    margin-right: 5px;
}
.main-navigation ul li:last-child,
nav ul .menu-item:last-child {
    padding-right: 0 !important;
    margin-right: 0;
}
/* ---------- 4. FOOTER GLOBAL ---------- */
.site-footer,
.footer-widget-area,
.ast-footer-bottom-bar,
.site-info {
    background-color: #000000 !important;
    color: #FFFFFF !important;
    border-top: 1px solid #800020 !important;
}
.site-footer a,
.footer-widget-area a { color: #DAA520 !important; }
.site-footer a:hover,
.footer-widget-area a:hover { color: #800020 !important; }
/* ---------- 5. FORMS (FULL WIDTH) ---------- */
.wpcf7 > form.wpcf7-form,
.wpforms-container,
.entry-content form {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 30px 20px !important;
    box-sizing: border-box;
}
form label,
.wpcf7-form-label {
    display: block !important;
    width: 100% !important;
    word-wrap: break-word !important;
    white-space: normal !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    margin-bottom: 8px !important;
}
/* ---------- 6. TEXT ALIGNMENT (NO JUSTIFY) ---------- */
.wp-block-list, p, li { text-align: left !important; }
/* ---------- 7. PRODUCT CATALOGUE GRID & TABS ---------- */
.products-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 40px;
}
@media (max-width:768px) { .products-grid { grid-template-columns: 1fr; } }
.catalogue-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 30px 0;
    justify-content: center;
}
.tab-btn {
    padding: 12px 20px;
    background: #f4f4f4;
    border: none;
    cursor: pointer;
    font-weight: 600;
}
.tab-btn.active,
.tab-btn:hover {
    background: #6a0dad;
    color: white;
}
/* Price badge */
.price-neg {
    background: #6a0dad;
    color: white;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 0.9rem;
    display: inline-block;
}
/* Product card */
.woocommerce ul.products li.product {
    text-align: center;
    border: 1px solid #eee;
    padding: 20px;
    border-radius: 8px;
}
.woocommerce ul.products li.product img { margin-bottom: 15px; }
/* ---------- 8. HIDE PAGE TITLE (NO DUPLICATE) ---------- */
.page-title,
.entry-title,
h1.entry-title,
.title,
.ast-title,
.has-text-align-center {
    display: none !important;
}
/* ---------- 9. CART BUTTONS – BULLETPROOF vs .wc-backward ---------- */
/* Hide ALL default WooCommerce buttons, with laser focus on .wc-backward */
.woocommerce-cart-form .actions .wc-backward,
.woocommerce a.wc-backward,
.woocommerce button.wc-backward,
.woocommerce-cart .wc-backward,
.woocommerce .return-to-shop,
.woocommerce .continue-shopping,
.woocommerce .wc-forward:not(.stella-return-btn):not(.stella-continue-btn),
.woocommerce-cart-form .actions .continue-shopping,
body.woocommerce-cart .button:contains("Continue shopping"),
body.woocommerce-cart .button:contains("Return to shop") {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    position: absolute !important;
    left: -9999px !important;
}
/* Your custom buttons (always visible, no interference) */
.stella-cart-buttons {
    margin: 30px 0 !important;
    text-align: center;
    display: block !important; /* Ensure container shows */
}
.stella-return-btn,
.stella-continue-btn {
    display: inline-block !important;
    background: #6a0dad !important;
    color: white !important;
    padding: 12px 24px !important;
    margin: 0 5px !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    transition: all 0.3s ease !important;
    border: none !important;
    box-shadow: 0 2px 4px rgba(106, 13, 173, 0.2) !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important; /* Override any absolute hiding */
}
.stella-return-btn:hover,
.stella-continue-btn:hover {
    background: #5a0b9d !important;
    transform: translateY(-1px) !important;
}
@media (max-width: 768px) {
    .stella-return-btn,
    .stella-continue-btn {
        display: block !important;
        margin: 10px auto !important;
        width: 100% !important;
        max-width: 250px !important;
    }
}
/* Ensure WooCommerce buttons don't add extra borders */
.woocommerce .button.wc-forward { border: none !important; }
/* ---------- 10. MOBILE RESPONSIVE FIXES ---------- */
@media (max-width: 768px) {
    .ast-header { height: 100px; }
    .ast-header .site-logo { max-height: 80px; }
    .site-footer .footer-logo {
        width: 150px;
        height: 45px;
        float: none;
        margin: 0 auto;
        display: block;
        text-align: center;
    }
    .ast-footer-bottom-bar .wpb_single_image,
    .ast-footer-bottom-bar .footer-logo {
        float: none !important;
        margin: 0 auto 10px !important;
        display: block !important;
        text-align: center !important;
    }
}
/* STELLA LUMEN – FINAL CSS (Repurposed Buttons: Unified Style) */
/* Header, Footer, Menu – unchanged */
.ast-header { background:#000 !important; height:150px; display:flex; align-items:center; justify-content:center; }
.ast-header .site-logo { background:url('https://stella-lumen.com/wp-content/uploads/2025/10/Logo.png') center/contain no-repeat !important; max-width:500px; max-height:120px; }
.site-footer { background:#000 !important; color:#fff !important; }
.site-footer .footer-logo { background:url('https://stella-lumen.com/wp-content/uploads/2025/10/Logo.png') right center/contain no-repeat !important; width:200px; height:60px; float:right; margin:0 20px; }
/* Menu */
.main-navigation a { font-size:18px !important; letter-spacing:1.5px; color:#DAA520 !important; }
.main-navigation a:hover { color:#800020 !important; }
.main-navigation ul li { padding-right:25px !important; }
.main-navigation ul li:last-child { padding-right:0 !important; }
/* Text alignment */
.wp-block-list, p, li { text-align:left !important; }
/* Catalogue */
.products-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:40px; }
@media(max-width:768px) { .products-grid { grid-template-columns:1fr; } }
/* Tabs */
.catalogue-tabs { display:flex; flex-wrap:wrap; gap:10px; margin:30px 0; justify-content:center; }
.tab-btn { padding:12px 20px; background:#f4f4f4; border:none; cursor:pointer; font-weight:600; }
.tab-btn.active, .tab-btn:hover { background:#6a0dad; color:white; }
/* Product card */
.woocommerce ul.products li.product { text-align:center; border:1px solid #eee; padding:20px; border-radius:8px; }
/* Hide default page title */
.entry-title, .page-title { display:none !important; }
/* UNIFIED CART BUTTONS STYLE (Custom + Repurposed Default) */
.stella-cart-buttons,
.woocommerce-cart-form .actions {
    margin: 20px 0 !important;
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}
.stella-return-btn,
.stella-continue-btn,
.woocommerce .wc-backward /* The repurposed default */ {
    display: inline-block !important;
    background: #6a0dad !important; /* Purple brand */
    color: white !important;
    padding: 12px 24px !important;
    margin: 0 !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    text-decoration: none !important;
    box-shadow: 0 2px 4px rgba(106,13,173,0.2) !important;
    transition: all 0.3s ease !important;
    border: none !important;
    flex: 1 !important;
    max-width: 200px !important;
}
.stella-return-btn:hover,
.stella-continue-btn:hover,
.woocommerce .wc-backward:hover {
    background: #5a0b9d !important; /* Darker purple */
    transform: translateY(-1px) !important;
}
/* Mobile: Stack all three */
@media(max-width:768px) {
    .stella-cart-buttons,
    .woocommerce-cart-form .actions {
        flex-direction: column !important;
    }
    .stella-return-btn,
    .stella-continue-btn,
    .woocommerce .wc-backward {
        width: 100% !important;
        max-width: 280px !important;
        margin: 5px auto !important;
    }
}
/* Mobile fixes */
@media(max-width:768px) {
    .ast-header { height:100px; }
    .ast-header .site-logo { max-height:80px; }
    .site-footer .footer-logo { width:150px; height:45px; float:none; margin:0 auto; display:block; }
}
/* ========================================
   STELLA LUMEN – PDF EXACT MATCH (ADD-ON)
   PRESERVES ORIGINAL CSS | ADDS PDF LAYOUT
   ======================================== */
/* ——— 11. FORCE GEORGIA (KILL ARIAL) ——— */
*, *::before, *::after,
body, input, button, select, textarea,
.ast-primary-header, .main-navigation, .site-info,
.entry-content, .woocommerce *, .wp-block-heading {
    font-family: Georgia, 'Times New Roman', Times, serif !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    text-rendering: optimizeLegibility !important;
}
/* ——— 12. PDF "PRODUCT CATALOGUE" TITLE (STACKED) ——— */
.entry-content h1,
.page .entry-content h1,
.woocommerce-loop-category__title {
    font-size: 7.2rem !important;
    font-weight: 900 !important;
    line-height: 0.75 !important;
    color: #000 !important;
    margin: 0 0 10px 0 !important;
    letter-spacing: -4.5px !important;
    text-align: center !important;
    text-transform: none !important;
}
/* ——— 13. SUBTITLE: "Governance | Audit & Risk..." ——— */
.entry-content h1 + p,
.entry-content .catalogue-subtitle,
.entry-content p:first-of-type {
    font-size: 1.25rem !important;
    color: #000 !important;
    margin: 0 0 65px 0 !important;
    font-weight: 400 !important;
    letter-spacing: 1.6px !important;
    text-align: center !important;
    font-style: normal !important;
}
/* ——— 14. PURPLE TABS (PDF EXACT) ——— */
.catalogue-tabs {
    gap: 18px !important;
    margin: 65px 0 75px !important;
    justify-content: center !important;
}
.tab-btn {
    padding: 17px 38px !important;
    background: #f9f9f9 !important;
    border: 2.5px solid #d0d0d0 !important;
    border-radius: 50px !important;
    font-weight: 600 !important;
    font-size: 16.5px !important;
    color: #000 !important;
    min-width: 145px !important;
    transition: all 0.38s ease !important;
}
.tab-btn.active,
.tab-btn:hover {
    background: #6a0dad !important;
    color: white !important;
    border-color: #6a0dad !important;
    transform: translateY(-6px) !important;
    box-shadow: 0 14px 32px rgba(106,, 13, 173, 0.4) !important;
}
/* ——— 15. PRODUCT GRID & CARD ——— */
.products-grid {
    gap: 48px !important;
    margin-top: 80px !important;
}
.woocommerce ul.products li.product {
    padding: 38px !important;
    border-radius: 24px !important;
    box-shadow: 0 8px 28px rgba(0,0,0,0.09) !important;
}
.woocommerce ul.products li.product:hover {
    transform: translateY(-18px) !important;
    box-shadow: 0 28px 60px rgba(0,0,0,0.2) !important;
}
.woocommerce ul.products li.product img {
    margin-bottom: 28px !important;
    border-radius: 20px !important;
    max-width: 72% !important;
}
/* ——— 16. "STELLA LUMEN" SCRIPT (PDF FOOTER) ——— */
.site-footer::after {
    content: "Stella Lumen";
    display: block;
    font-family: 'Dancing Script', cursive !important;
    font-size: 3.6rem !important;
    color: #800020 !important;
    text-align: center !important;
    margin: 30px 0 20px !important;
    font-weight: 400 !important;
}
/* ——— 17. CART: 3 BURGUNDY BUTTONS (YOUR VISION) ——— */
.stella-cart-navigation {
    margin: 60px 0 32px !important;
    gap: 28px !important;
}
.stella-btn {
    background: #800020 !important;
    color: white !important;
    padding: 19px 42px !important;
    border-radius: 50px !important;
    font-size: 17.5px !important;
    font-weight: 600 !important;
    letter-spacing: 1.1px !important;
    box-shadow: 0 9px 28px rgba(128, 0, 32, 0.34) !important;
    border: 2.5px solid #800020 !important;
    min-width: 205px !important;
}
.stella-btn:hover {
    background: #DAA520 !important;
    color: #800020 !important;
    transform: translateY(-7px) !important;
    box-shadow: 0 18px 44px rgba(218, 165, 32, 0.5) !important;
    border-color: #DAA520 !important;
}
/* ——— 18. PROCEED TO CHECKOUT ——— */
.woocommerce .wc-proceed-to-checkout a.checkout-button {
    background: #800020 !important;
    color: white !important;
    font-size: 21px !important;
    padding: 21px 46px !important;
    border-radius: 50px !important;
    border: 2.5px solid #800020 !important;
    box-shadow: 0 9px 28px rgba(128, 0, 32, 0.36) !important;
    max-width: 360px !important;
    margin: 45px auto 0 !important;
}
.woocommerce .checkout-button:hover {
    background: #DAA520 !important;
    color: #800020 !important;
    transform: translateY(-6px) !important;
    border-color: #DAA520 !important;
}
/* ——— 19. MOBILE OVERRIDES ——— */
@media (max-width: 768px) {
    .entry-content h1 {
        font-size: 4.4rem !important;
        letter-spacing: -3px !important;
        line-height: 0.82 !important;
    }
    .entry-content h1 + p {
        font-size: 1.08rem !important;
        margin-bottom: 50px !important;
    }
    .catalogue-tabs {
        margin: 50px 0 60px !important;
    }
    .tab-btn {
        padding: 15px 32px !important;
        font-size: 15.5px !important;
    }
    .stella-btn {
        max-width: 320px !important;
        margin: 12px auto !important;
    }
}
/* ========================================
   STELLA LUMEN – GOLD UNDERLINE CART BUTTONS ONLY
   (Safe: does NOT affect headers, fonts, or site)
   ======================================== */
.stella-gold-buttons {
    display: flex;
    justify-content: center;
    gap: 32px;
    margin: 40px 0 30px !important;
    flex-wrap: wrap;
    text-align: center;
}
.stella-gold-btn {
    position: relative;
    font-size: 16.5px !important;
    color: #DAA520 !important;
    text-decoration: none !important;
    letter-spacing: 0.8px !important;
    padding: 8px 0 !important;
    transition: all 0.35s ease !important;
    display: inline-block;
    font-weight: 600 !important;
}
.stella-gold-btn::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 2.5px;
    background: #DAA520;
    transition: all 0.35s ease;
    transform: translateX(-50%);
}
.stella-gold-btn:hover {
    color: #800020 !important;
    transform: translateY(-2px) !important;
}
.stella-gold-btn:hover::after {
    width: 100%;
}
/* Hide default WooCommerce "Continue shopping" / "Return to shop" */
.woocommerce a.wc-backward,
.woocommerce .return-to-shop a,
.woocommerce .continue-shopping {
    display: none !important;
}
/* Mobile: stack vertically */
@media (max-width: 768px) {
    .stella-gold-buttons {
        flex-direction: column;
        gap: 18px;
        margin: 30px 0 20px !important;
    }
    .stella-gold-btn {
        font-size: 15.5px !important;
    }
}
/* ——— HEADER MENU FONT SIZE: 22px (clean & responsive) ——— */
.main-navigation a,
.ast-primary-menu a,
nav ul li a {
    font-size: 22px !important;
    line-height: 1.4 !important; /* improves vertical alignment */
}
@media (max-width: 768px) {
    .main-navigation a,
    .ast-primary-menu a,
    nav ul li a {
        font-size: 19px !important;
    }
}
/* ========================================
   CATALOGUE PAGE – BURGUNDY & GOLD PALETTE + REAL LINKS
   ======================================== */
/* Title */
.entry-content h1,
.page .entry-content h1 {
    color: #800020 !important;
}
/* Subtitle (Governance | Audit & Risk | ...) */
.entry-content h1 + p,
.catalogue-subtitle {
    color: #6a0d3f !important; /* Darker burgundy for contrast */
    font-weight: 500 !important;
}
/* Active tab (All) */
.tab-btn.active,
.tab-btn.active:hover {
    background: #800020 !important;
    color: #DAA520 !important;
    border-color: #800020 !important;
    box-shadow: 0 4px 12px rgba(128, 0, 32, 0.3) !important;
}
/* Inactive tabs */
.tab-btn {
    background: #f8f5f0 !important; /* Light gold-cream */
    color: #800020 !important;
    border: 2px solid #DAA520 !important;
    border-radius: 50px !important;
    padding: 14px 28px !important;
    font-weight: 600 !important;
    transition: all 0.3s ease !important;
}
.tab-btn:hover {
    background: #DAA520 !important;
    color: #800020 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 20px rgba(218, 165, 32, 0.3) !important;
}
/* Optional: Add gold underline on hover */
.tab-btn::after {
    content: '';
    position: absolute;
    bottom: 8px;
    left: 50%;
    width: 0;
    height: 2px;
    background: #DAA520;
    transition: width 0.3s ease;
    transform: translateX(-50%);
}
.tab-btn:hover::after {
    width: 60%;
}
/* ========================================
   CATEGORY ARCHIVE PAGES – CUSTOM HEADINGS
   ======================================== */
/* Hide default WooCommerce title */
.woocommerce-products-header .page-title,
.woocommerce-page .woocommerce-products-header h1 {
    display: none !important;
}
/* Custom category heading – matches catalogue style */
.category-custom-heading {
    text-align: center;
    margin: 50px 0 30px !important;
    padding: 0 20px;
}
.category-custom-heading h1 {
    font-size: 3.8rem !important;
    font-weight: 900 !important;
    color: #800020 !important;
    letter-spacing: -1.8px !important;
    line-height: 1.1 !important;
    margin: 0 !important;
    font-family: 'CripplingOurCountry', Georgia, serif !important;
}
/* Subtitle (optional – reuse from main page) */
.category-custom-heading p {
    font-size: 1.1rem !important;
    color: #800020 !important;
    margin: 15px 0 0 !important;
    letter-spacing: 1.2px !important;
    font-weight: 500;
}
/* Mobile */
@media (max-width: 768px) {
    .category-custom-heading h1 {
        font-size: 2.8rem !important;
        letter-spacing: -1.2px !important;
    }
}
/* ========================================
   FORCE ALL HEADINGS TO ARIAL (NO TIMES NEW ROMAN)
   ======================================== */
h1, h2, h3, h4, h5, h6,
.entry-content h1, .entry-content h2, .entry-content h3,
.page-title, .woocommerce-products-header h1,
.category-custom-heading h1 {
    font-family: Arial, "Helvetica Neue", Helvetica, sans-serif !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}
/* Hide top cart links */
.woocommerce .cart-collaterals .wc-proceed-to-checkout ~ a,
.return-to-shop,
.wc-backward,
a[href*="continue-shopping"],
a[href*="return-to-home"] {
    display: none !important;
}
/* Nuclear option – removes ANY tab that contains the text "School Finance" */
.catalogue-tab {
    position: relative;
}
.catalogue-tab::after {
    content: "";
    display: none;
}
.catalogue-tab:has-text("School Finance") {
    display: none !important;
}
/* Alternative pure-CSS version that works in all browsers today */
.catalogue-tab {
    display: block !important;
}
.catalogue-tab:nth-child(n) {
    /* Force hide by exact text – inspect element to get the exact position if needed */
}
.catalogue-tab[data-category*="finance"]:not([data-category="business-financial-management"]):not([data-category="personal-financial-management"]):not([data-category="school-financial-management"]) {
    display: none !important;
}
button.catalogue-tab[data-category="school-finance"] {
    display: none !important;
}










