/* ════════════════════════════════════════════════════════════════════
   JAMBO DUKA — PREMIUM POLISH LAYER
   Loaded after app.css. Overrides the loudest surfaces with a
   restrained, editorial palette: ivory + charcoal + forest + gold.
   ════════════════════════════════════════════════════════════════════ */

:root {
    --jd-ivory: #faf7f2;
    --jd-cream: #f3ede1;
    --jd-paper: #ffffff;
    --jd-line:  #e7e1d3;
    --jd-line-soft: #efeadd;

    --jd-ink:        #14110d;
    --jd-charcoal:   #2a2620;
    --jd-mute:       #6b6357;
    --jd-mute-soft:  #9a9285;

    --jd-flash:       #4a0a0a;
    --jd-flash-deep:  #2a0505;
    --jd-flash-soft:  #6a1010;

    --jd-gold:       #b89968;
    --jd-gold-soft:  #d9c69a;
    --jd-gold-deep:  #8a6f44;

    --jd-shadow-sm: 0 1px 2px rgba(20, 17, 13, 0.04), 0 1px 3px rgba(20, 17, 13, 0.06);
    --jd-shadow-md: 0 4px 12px rgba(20, 17, 13, 0.06), 0 2px 4px rgba(20, 17, 13, 0.04);
    --jd-shadow-lg: 0 24px 60px -20px rgba(20, 17, 13, 0.18), 0 8px 24px -8px rgba(20, 17, 13, 0.10);
}

/* ── BASE ─────────────────────────────────────────────────────────── */
body {
    background: var(--jd-ivory);
    color: var(--jd-ink);
    font-family: 'Manrope', system-ui, -apple-system, sans-serif;
    font-feature-settings: 'ss01', 'cv11';
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#app.bg-body-tertiary { background: var(--jd-ivory) !important; }

::selection { background: var(--jd-flash); color: var(--jd-cream); }

/* ── HEADER ───────────────────────────────────────────────────────── */
.jd-header { background: var(--jd-paper); border-bottom: 1px solid var(--jd-line); box-shadow: 0 1px 0 rgba(20,17,13,0.02); }
.jd-header__topbar {
    background: var(--jd-ink) !important;
    color: var(--jd-cream) !important;
    border-bottom: 1px solid rgba(255,255,255,0.04);
}
.jd-header__topbar-inner,
.jd-header__topbar-meta,
.jd-header__topbar span { color: rgba(243,237,225,0.78) !important; font-weight: 500; letter-spacing: 0.01em; }
.jd-header__bar { background: var(--jd-paper); }
.jd-mainnav a {
    color: var(--jd-charcoal) !important;
    font-weight: 600;
    letter-spacing: 0.01em;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 0.4rem 0 !important;
    margin: 0 0.95rem;
    border-bottom: 1.5px solid transparent;
    transition: color 0.15s, border-color 0.15s;
}
.jd-mainnav a:hover { color: var(--jd-flash) !important; }
.jd-mainnav a.is-active { color: var(--jd-flash) !important; border-bottom-color: var(--jd-gold) !important; }

.jd-search__input {
    background: var(--jd-ivory) !important;
    border: 1px solid var(--jd-line) !important;
    color: var(--jd-ink) !important;
    border-radius: 999px !important;
    font-family: 'Manrope', sans-serif;
    transition: border-color 0.15s, background 0.15s;
}
.jd-search__input::placeholder { color: var(--jd-mute-soft) !important; }
.jd-search__input:focus { background: var(--jd-paper) !important; border-color: var(--jd-flash) !important; box-shadow: 0 0 0 4px rgba(74,10,10,0.08) !important; outline: none; }
.jd-search__btn {
    background: var(--jd-flash) !important;
    color: var(--jd-cream) !important;
    border-radius: 999px !important;
}
.jd-search__btn:hover { background: var(--jd-flash-deep) !important; }

.jd-header__cart {
    background: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    color: var(--jd-charcoal) !important;
    border-radius: 999px !important;
    box-shadow: var(--jd-shadow-sm);
}
.jd-header__cart:hover { border-color: var(--jd-flash) !important; color: var(--jd-flash) !important; }
.jd-header__cart-count { background: var(--jd-gold) !important; color: var(--jd-ink) !important; font-weight: 800; }

.jd-header__login {
    background: var(--jd-flash) !important;
    color: var(--jd-cream) !important;
    border-radius: 999px !important;
    padding: 0.55rem 1.4rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em;
    border: 0 !important;
    transition: background 0.15s, transform 0.15s;
}
.jd-header__login:hover { background: var(--jd-flash-deep) !important; transform: translateY(-1px); }

.jd-header__user-btn {
    background: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    color: var(--jd-charcoal) !important;
    border-radius: 999px !important;
}
.jd-header__user-btn:hover { border-color: var(--jd-flash) !important; }

/* ── PAGE / HERO BACKGROUNDS — kill the maroon/red palette ──────────── */
.jd-page,
.sp-page {
    background:
        radial-gradient(circle at top right, rgba(184,153,104,0.06), transparent 38%),
        var(--jd-ivory) !important;
}

.jd-hero {
    background: linear-gradient(135deg, var(--jd-flash-deep) 0%, var(--jd-flash) 55%, #4a0a0a 100%) !important;
    color: var(--jd-cream) !important;
    border-bottom: 1px solid rgba(184,153,104,0.18);
}
.jd-hero::before {
    background:
        radial-gradient(circle at 78% 22%, rgba(217,198,154,0.16) 0%, transparent 38%),
        radial-gradient(circle at 18% 80%, rgba(184,153,104,0.10) 0%, transparent 44%) !important;
}
.jd-hero::after {
    background: linear-gradient(90deg, transparent, var(--jd-gold-soft) 30%, var(--jd-gold) 50%, var(--jd-gold-soft) 70%, transparent) !important;
    height: 1px !important;
    opacity: 0.5;
}
.jd-hero__eyebrow {
    background: rgba(217,198,154,0.10) !important;
    border: 1px solid rgba(217,198,154,0.32) !important;
    color: var(--jd-gold-soft) !important;
    font-weight: 600;
}
.jd-hero__dot { background: var(--jd-gold) !important; }
.jd-hero__product-label { color: var(--jd-gold-soft) !important; font-weight: 600; letter-spacing: 0.18em; }
.jd-hero__title {
    color: var(--jd-paper) !important;
    text-shadow: none !important;
    font-weight: 600;
    letter-spacing: -0.015em;
}
.jd-hero__desc { color: rgba(243,237,225,0.82) !important; }
.jd-hero__features li { color: rgba(243,237,225,0.85) !important; }
.jd-hero__features li::before { background: var(--jd-gold) !important; }
.jd-hero__price-current { color: var(--jd-gold-soft) !important; }
.jd-hero__price-current small { color: rgba(217,198,154,0.7) !important; }
.jd-hero__price-original { color: rgba(243,237,225,0.5) !important; }

/* sp-hero on /products — keep original warm brown palette, NOT crimson flash-sale */
.sp-hero {
    background: linear-gradient(135deg, #1a0800 0%, #150800 60%, #1a0d03 100%) !important;
    border-bottom: 1px solid rgba(251,146,60,0.2) !important;
}
.sp-hero::before {
    background: radial-gradient(ellipse 70% 120% at 80% -20%, rgba(220,38,38,0.14) 0%, transparent 70%) !important;
}
.sp-hero__eyebrow { color: #fb923c !important; }
.sp-hero__eyebrow::before { background: #f97316 !important; }
.sp-hero__title { color: #fff !important; font-weight: 600; letter-spacing: -0.015em; }
.sp-hero__sub { color: rgba(255,255,255,0.5) !important; }

/* products-page below-hero */
.sp-page { background: var(--jd-ivory) !important; }
.sp-page * { /* keep readable text on light bg */ }
.sp-toolbar,
.sp-tabs,
.sp-tabs__link,
.sp-tabs__link.is-active,
.sp-search-form input,
.sp-sort,
.sp-count {
    /* force readable on ivory */
}
.sp-search-form input[type="search"],
.sp-search-form input[type="text"] {
    background: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    color: var(--jd-ink) !important;
    border-radius: 999px !important;
}
.sp-search-form input:focus { border-color: var(--jd-flash) !important; box-shadow: 0 0 0 4px rgba(74,10,10,0.08) !important; }
.sp-search-form button[type="submit"] {
    background: var(--jd-flash) !important;
    color: var(--jd-cream) !important;
    border-radius: 999px !important;
    border: 0 !important;
    font-weight: 600 !important;
    padding: 0.7rem 1.6rem !important;
}
.sp-search-form button[type="submit"]:hover { background: var(--jd-flash-deep) !important; }

.sp-tabs__link, .sp-tabs a {
    color: var(--jd-mute) !important;
    font-weight: 600 !important;
}
.sp-tabs__link.is-active, .sp-tabs a.is-active {
    color: var(--jd-flash) !important;
    border-bottom-color: var(--jd-gold) !important;
}
.sp-count, .sp-count span { color: var(--jd-mute) !important; }
.sp-sort, .sp-sort select {
    background: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    color: var(--jd-ink) !important;
    border-radius: 999px !important;
}

/* ── HERO CTAs (Buy Now / View product) ───────────────────────────── */
.jd-btn-hero-primary {
    background: var(--jd-gold) !important;
    background-image: none !important;
    color: var(--jd-ink) !important;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 0.85rem 1.7rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em;
    box-shadow: 0 6px 18px rgba(184,153,104,0.28) !important;
    transition: background 0.15s, transform 0.15s, box-shadow 0.15s !important;
}
.jd-btn-hero-primary:hover {
    background: var(--jd-gold-soft) !important;
    color: var(--jd-ink) !important;
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(184,153,104,0.35) !important;
}

.jd-btn-hero-ghost {
    background: rgba(217,198,154,0.06) !important;
    border: 1px solid rgba(217,198,154,0.4) !important;
    color: var(--jd-cream) !important;
    border-radius: 999px !important;
    padding: 0.85rem 1.5rem !important;
    font-weight: 600 !important;
}
.jd-btn-hero-ghost:hover { background: rgba(217,198,154,0.16) !important; border-color: var(--jd-gold-soft) !important; color: var(--jd-paper) !important; }

.jd-hero__price-save {
    background: var(--jd-gold) !important;
    color: var(--jd-ink) !important;
    border-radius: 999px !important;
    padding: 0.25rem 0.7rem !important;
    font-weight: 700 !important;
}

/* In-stock pill on hero image */
.jd-hero__stock-badge,
.jd-hero__product-tag {
    background: var(--jd-cream) !important;
    color: var(--jd-flash-deep) !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
}

/* ── PRODUCTS PAGE — sticky filter bar (was dark, now ivory) ──────── */
.sp-filter-bar {
    background: rgba(250, 247, 242, 0.92) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--jd-line) !important;
}
.sp-filter-bar__count { color: var(--jd-mute) !important; }
.sp-filter-bar__count strong { color: var(--jd-ink) !important; }

.sp-sort-select {
    background-color: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    color: var(--jd-ink) !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 16 16' fill='rgba(107,99,87,0.8)'%3E%3Cpath d='M8 10.94 3.53 6.47l1.06-1.06L8 8.81l3.41-3.4 1.06 1.06L8 10.94Z'/%3E%3C/svg%3E") !important;
}
.sp-sort-select:focus { border-color: var(--jd-flash) !important; box-shadow: 0 0 0 4px rgba(74,10,10,0.08) !important; }

/* sp-tabs sit on ivory below the hero — keep them dark/readable.
   (Earlier duplicate rules removed; only this single block governs colors.) */
.sp-tabs { border-bottom: 1px solid var(--jd-line) !important; }

/* search form on /products is inside sp-hero (dark) — make readable */
.sp-search-form input[type="search"],
.sp-search-form input[type="text"] {
    background: rgba(255,255,255,0.95) !important;
    color: var(--jd-ink) !important;
}
.sp-search-form input::placeholder { color: var(--jd-mute-soft) !important; opacity: 1; }

/* ── PRODUCT GRID (dark cards → light) ─────────────────────────────── */
.sp-card {
    background: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    border-radius: 0.85rem !important;
}
.sp-card:hover {
    border-color: var(--jd-gold-soft) !important;
    box-shadow: var(--jd-shadow-lg) !important;
}
.sp-card__media { background: var(--jd-cream) !important; }
.sp-card__name a { color: var(--jd-ink) !important; font-weight: 700 !important; }
.sp-card__name a:hover { color: var(--jd-flash) !important; }
.sp-card__cat { color: var(--jd-gold-deep) !important; font-weight: 700 !important; letter-spacing: 0.12em !important; }
.sp-card__desc { color: var(--jd-mute) !important; }
.sp-card__price { color: var(--jd-ink) !important; }
.sp-card__price small { color: var(--jd-mute) !important; }
.sp-card__was { color: var(--jd-mute-soft) !important; }
.sp-card__save,
.sp-card__badges .sp-card__discount {
    background: var(--jd-gold) !important;
    color: var(--jd-ink) !important;
    font-weight: 800 !important;
    border-radius: 999px !important;
}
.sp-card__cta {
    background: var(--jd-flash) !important;
    color: var(--jd-cream) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
}
.sp-card__cta:hover { background: var(--jd-flash-deep) !important; color: var(--jd-cream) !important; }
.sp-card__quick-add {
    background: var(--jd-flash) !important;
    color: var(--jd-cream) !important;
    border: 0 !important;
}
.sp-card__quick-add:hover { background: var(--jd-flash-deep) !important; }
.sp-card__rating { color: var(--jd-gold-deep) !important; }

/* ── BUTTONS — scoped to storefront wrappers to avoid bleeding into admin/auth ── */
.jd-page .btn-primary,
.sp-page .btn-primary,
.pd-page .btn-primary,
.jd-cart-page .btn-primary,
.acc-page .btn-primary,
.store-shell .btn-primary,
.checkout-page .btn-primary,
.storefront-btn-primary {
    background: var(--jd-flash) !important;
    color: var(--jd-cream) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em;
    padding: 0.8rem 1.6rem !important;
    box-shadow: var(--jd-shadow-sm);
    transition: background 0.15s, transform 0.15s, box-shadow 0.15s;
}
.jd-page .btn-primary:hover,
.sp-page .btn-primary:hover,
.pd-page .btn-primary:hover,
.jd-cart-page .btn-primary:hover,
.acc-page .btn-primary:hover,
.store-shell .btn-primary:hover,
.checkout-page .btn-primary:hover,
.storefront-btn-primary:hover,
.storefront-btn-primary:focus {
    background: var(--jd-flash-deep) !important;
    color: var(--jd-cream) !important;
    transform: translateY(-1px);
    box-shadow: var(--jd-shadow-md);
}

/* secondary btn: keep dark scheme only on dark heroes (jd-hero / sp-hero / acc-hero) */
.jd-hero .storefront-btn-secondary,
.sp-hero .storefront-btn-secondary,
.acc-hero .storefront-btn-secondary {
    background: transparent !important;
    border: 1px solid rgba(217,198,154,0.5) !important;
    color: var(--jd-cream) !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
    padding: 0.8rem 1.6rem !important;
}
.jd-hero .storefront-btn-secondary:hover,
.sp-hero .storefront-btn-secondary:hover,
.acc-hero .storefront-btn-secondary:hover { background: rgba(217,198,154,0.12) !important; border-color: var(--jd-gold-soft) !important; }
/* on light surfaces, secondary stays readable */
.storefront-btn-secondary {
    border-radius: 999px !important;
    font-weight: 600 !important;
    padding: 0.8rem 1.6rem !important;
}

/* hero CTAs (Buy Now / View product) — need readable on dark hero */
.jd-hero a[href*="cart"],
.jd-hero button[type="submit"]:not(.jd-search__btn) {
    background: var(--jd-gold) !important;
    color: var(--jd-ink) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em;
}
.jd-hero a[href*="cart"]:hover,
.jd-hero button[type="submit"]:not(.jd-search__btn):hover { background: var(--jd-gold-soft) !important; }

/* ── PRODUCT CARDS ─────────────────────────────────────────────────── */
.storefront-product-card,
.store-product-card-refined,
.sp-card {
    background: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    border-radius: 0.85rem !important;
    box-shadow: none !important;
    transition: border-color 0.18s, transform 0.18s, box-shadow 0.18s !important;
    overflow: hidden;
}
.storefront-product-card:hover,
.store-product-card-refined:hover,
.sp-card:hover {
    border-color: var(--jd-gold-soft) !important;
    transform: translateY(-3px);
    box-shadow: var(--jd-shadow-lg) !important;
}

.storefront-product-card h3,
.store-product-card-refined h2,
.store-product-card-refined h3,
.sp-card__title {
    color: var(--jd-ink) !important;
    font-family: 'Manrope', sans-serif;
    font-weight: 700 !important;
    letter-spacing: -0.005em;
}
.storefront-product-card p,
.store-product-card-refined p { color: var(--jd-mute) !important; }
.store-product-card-refined__meta,
.sp-card__cat,
.storefront-product-card .meta,
.storefront-product-card__category {
    color: var(--jd-gold-deep) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 0.7rem !important;
}

/* SP card on /products page (dark bg before override → now ivory) */
.sp-card,
.sp-card__media,
.sp-card__body { background: var(--jd-paper) !important; }
.sp-card__price,
.sp-card__price-current { color: var(--jd-ink) !important; font-weight: 800 !important; }
.sp-card__price-original { color: var(--jd-mute-soft) !important; }
.sp-card__discount,
.sp-discount,
.sp-badge--discount {
    background: var(--jd-gold) !important;
    color: var(--jd-ink) !important;
    font-weight: 800 !important;
    border-radius: 999px !important;
}

/* ── SECTION HEADINGS ──────────────────────────────────────────────── */
.storefront-section-heading h2 {
    font-family: 'Cormorant Garamond', serif !important;
    color: var(--jd-ink) !important;
    font-weight: 600 !important;
    letter-spacing: -0.015em;
}
.storefront-section-heading p { color: var(--jd-mute) !important; }

.storefront-feature-panel {
    background: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    border-radius: 1rem !important;
    box-shadow: var(--jd-shadow-sm);
}
.storefront-feature-panel h3 {
    color: var(--jd-ink) !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 600 !important;
}
.storefront-feature-panel p { color: var(--jd-mute) !important; }

/* ── FOOTER ────────────────────────────────────────────────────────── */
.site-footer {
    background: var(--jd-ink) !important;
    color: rgba(243,237,225,0.7) !important;
    border-top: 1px solid var(--jd-flash-soft) !important;
}
.site-footer__brand p { color: rgba(243,237,225,0.6) !important; }
.site-footer__contact span { color: rgba(243,237,225,0.78) !important; }
.site-footer__links h3 {
    color: var(--jd-gold-soft) !important;
    font-size: 0.74rem !important;
    letter-spacing: 0.16em;
    font-weight: 700 !important;
    text-transform: uppercase;
}
.site-footer__links a,
.site-footer__links span { color: rgba(243,237,225,0.62) !important; transition: color 0.15s; }
.site-footer__links a:hover { color: var(--jd-gold-soft) !important; }
.site-footer__bottom { color: rgba(243,237,225,0.42) !important; border-top-color: rgba(255,255,255,0.06) !important; }

/* ── ALERTS ────────────────────────────────────────────────────────── */
.alert-success {
    background: #f0f5ee !important;
    border: 1px solid #c8d9c2 !important;
    color: var(--jd-flash-deep) !important;
    border-radius: 0.75rem !important;
}
.alert-danger {
    background: #fbf2ee !important;
    border: 1px solid #e8c9bb !important;
    color: #6b2a14 !important;
    border-radius: 0.75rem !important;
}

/* ── CART / CHECKOUT polish ────────────────────────────────────────── */
.jd-cart-page { background: var(--jd-ivory) !important; }
.jd-cart-page__eyebrow { color: var(--jd-gold-deep) !important; }
.jd-cart-page__title { color: var(--jd-ink) !important; font-family: 'Cormorant Garamond', serif !important; font-weight: 600 !important; }
.jd-cart-card,
.jd-summary { border-color: var(--jd-line) !important; box-shadow: var(--jd-shadow-sm) !important; }
.jd-summary__checkout {
    background: var(--jd-flash) !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
}
.jd-summary__checkout:hover { background: var(--jd-flash-deep) !important; }
.jd-summary__total-amount { color: var(--jd-ink) !important; }
.jd-cart-trust {
    background: var(--jd-cream) !important;
    border-color: var(--jd-gold-soft) !important;
    color: var(--jd-gold-deep) !important;
}

/* ── ACCOUNT (home.blade.php) ──────────────────────────────────────── */
.acc-page { background: var(--jd-ivory) !important; }
.acc-hero {
    background: linear-gradient(135deg, var(--jd-flash-deep) 0%, var(--jd-flash) 60%, #4a0a0a 100%) !important;
}
.acc-hero::after { background: rgba(184,153,104,0.08) !important; }
.acc-hero__eyebrow { color: rgba(217,198,154,0.7) !important; }
.acc-hero__name { font-family: 'Cormorant Garamond', serif !important; color: var(--jd-paper) !important; font-weight: 600 !important; }
.acc-hero__sub { color: rgba(243,237,225,0.66) !important; }
.acc-hero__badge { background: rgba(217,198,154,0.12) !important; border-color: rgba(217,198,154,0.3) !important; color: var(--jd-cream) !important; }
.acc-hero__badge:hover { background: rgba(217,198,154,0.22) !important; }
.acc-hero__badge--primary { background: var(--jd-gold) !important; color: var(--jd-ink) !important; border-color: var(--jd-gold) !important; }
.acc-hero__badge--primary:hover { background: var(--jd-gold-soft) !important; color: var(--jd-ink) !important; }
.acc-card { box-shadow: var(--jd-shadow-sm) !important; border-color: var(--jd-line) !important; }
.acc-card__title { color: var(--jd-ink) !important; }

/* ── CHECKOUT polish (light surfaces) ──────────────────────────────── */
.checkout-page,
.co-page { background: var(--jd-ivory) !important; }

/* ── Subtle headline upgrade across the site ───────────────────────── */
h1, h2, .jd-hero__title, .sp-hero__title, .acc-hero__name {
    -webkit-font-smoothing: antialiased;
}

/* ── FAQ PAGE ──────────────────────────────────────────────────────── */
.store-faq-card,
.storefront-faq-card {
    background: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    color: var(--jd-ink) !important;
    box-shadow: var(--jd-shadow-sm) !important;
    border-radius: 0.85rem !important;
}
.store-faq-card h2,
.storefront-faq-card h3 {
    color: var(--jd-ink) !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 600 !important;
}
.store-faq-card p,
.storefront-faq-card p { color: var(--jd-mute) !important; }

.store-status-pill {
    background: var(--jd-cream) !important;
    color: var(--jd-gold-deep) !important;
    border: 1px solid var(--jd-gold-soft) !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase;
    font-size: 0.7rem !important;
}

.store-shell .accordion-button,
.jd-page .accordion-button,
.sp-page .accordion-button {
    background: var(--jd-paper) !important;
    color: var(--jd-ink) !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}
.store-shell .accordion-button:not(.collapsed),
.jd-page .accordion-button:not(.collapsed),
.sp-page .accordion-button:not(.collapsed) {
    background: var(--jd-cream) !important;
    color: var(--jd-flash-deep) !important;
}
.store-shell .accordion-item,
.jd-page .accordion-item,
.sp-page .accordion-item {
    background: var(--jd-paper) !important;
    border: 1px solid var(--jd-line) !important;
    border-radius: 0.75rem !important;
    overflow: hidden;
    margin-bottom: 0.5rem;
}
.store-shell .accordion-body,
.jd-page .accordion-body,
.sp-page .accordion-body { color: var(--jd-charcoal) !important; background: var(--jd-paper) !important; }

/* FAQ page hero/header text inside its own page (was dark + orange) */
.faq-hero,
.store-faq-hero,
.storefront-faq-hero {
    background: linear-gradient(135deg, var(--jd-flash-deep) 0%, var(--jd-flash) 100%) !important;
    color: var(--jd-cream) !important;
}

/* Catch-all: any view that previously used a dark/red page background — make ivory */
.store-faq-page,
.storefront-faq-page,
.faq-page { background: var(--jd-ivory) !important; }

/* ── PRODUCT DETAIL PAGE (pd-*) ────────────────────────────────────── */
.pd-page { background: var(--jd-ivory) !important; }
.pd-breadcrumb a { color: var(--jd-mute) !important; }
.pd-breadcrumb a:hover { color: var(--jd-flash) !important; }
.pd-breadcrumb__current { color: var(--jd-ink) !important; }

.pd-title,
.pd-page h1 {
    color: var(--jd-ink) !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 600 !important;
    letter-spacing: -0.01em;
}
.pd-brand,
.pd-meta { color: var(--jd-mute) !important; }
.pd-price,
.pd-price-current { color: var(--jd-ink) !important; }
.pd-price-was,
.pd-was { color: var(--jd-mute-soft) !important; }
.pd-save,
.pd-saving {
    background: var(--jd-cream) !important;
    color: var(--jd-gold-deep) !important;
    border: 1px solid var(--jd-gold-soft) !important;
    border-radius: 999px !important;
}

.pd-cta,
.pd-buy-btn,
.pd-action-primary,
.pd-page button[type="submit"]:not(.btn-close),
.pd-page a.btn-primary,
.pd-page .pd-action {
    background: var(--jd-flash) !important;
    background-image: none !important;
    color: var(--jd-cream) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
    box-shadow: 0 4px 12px rgba(31,61,43,0.18) !important;
}
.pd-page button[type="submit"]:hover,
.pd-page a.btn-primary:hover,
.pd-action-primary:hover { background: var(--jd-flash-deep) !important; }

.pd-spec,
.pd-spec dt,
.pd-spec dd,
.pd-specs { color: var(--jd-charcoal) !important; }
.pd-spec { background: var(--jd-paper) !important; border: 1px solid var(--jd-line) !important; border-radius: 0.65rem !important; }
.pd-spec dt { color: var(--jd-mute) !important; font-weight: 700 !important; letter-spacing: 0.08em !important; text-transform: uppercase; font-size: 0.7rem !important; }
.pd-spec dd { color: var(--jd-ink) !important; font-weight: 700 !important; }

/* DAIRY pill / IN STOCK pill on product detail */
.pd-page .badge,
.pd-page .pill,
.pd-tag,
.pd-status-pill {
    border-radius: 999px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    font-size: 0.7rem !important;
    text-transform: uppercase;
}

/* "Sign in to buy" navy → forest */
.pd-page a[href*="login"]:not(.jd-mainnav a),
.pd-page button.btn-dark,
.pd-page a.btn-dark {
    background: var(--jd-flash) !important;
    color: var(--jd-cream) !important;
    border: 0 !important;
    border-radius: 999px !important;
}

/* ── STORE SHELL (used by FAQ + other store pages) ─────────────────── */
.store-shell {
    background:
        radial-gradient(circle at top left, rgba(184, 153, 104, 0.10), transparent 35%),
        linear-gradient(180deg, var(--jd-cream) 0%, var(--jd-ivory) 100%) !important;
}
.store-section-header__eyebrow {
    color: var(--jd-gold-deep) !important;
}
.store-section-header__eyebrow::before {
    background: var(--jd-gold-soft) !important;
}
.store-section-header h1,
.store-section-header h2 {
    color: var(--jd-ink) !important;
    font-family: 'Cormorant Garamond', serif !important;
    letter-spacing: -0.005em !important;
}
.store-section-header p {
    color: var(--jd-mute) !important;
}
.store-accordion .accordion-item,
.store-accordion .accordion-button,
.store-accordion .accordion-button:not(.collapsed),
.store-accordion .accordion-body {
    color: var(--jd-ink) !important;
}

/* ── ORDERS PAGE polish ────────────────────────────────────────────── */
.orders-page,
.order-page { background: var(--jd-ivory) !important; }

/* ── Scrollbar (premium subtle) ────────────────────────────────────── */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--jd-ivory); }
::-webkit-scrollbar-thumb { background: var(--jd-line); border-radius: 999px; border: 2px solid var(--jd-ivory); }
::-webkit-scrollbar-thumb:hover { background: var(--jd-mute-soft); }
