/* ==========================================================================
   Dar Taiba storefront: additions to the original design (LTR English store).
   The design files (styles/navbar/products/product-details) were mirrored with rtlcss;
   this file adds the footer, cart, static pages and fixes for the mirrored layout.
   ========================================================================== */
[hidden] { display: none !important; }
body.lang-en { font-family: 'Inter', -apple-system, 'Segoe UI', sans-serif; }
body.lang-ar, [lang="ar"] { font-family: 'Cairo', sans-serif; }
[lang="en"] { font-family: 'Inter', -apple-system, 'Segoe UI', sans-serif; }

/* corner arabesques were drawn for the top-right corner of RTL cards: mirror them in English */
.lang-en .cat-ornament-top-svg, .lang-en .cat-ornament-bottom-svg { transform: scaleX(-1); }

/* ---------- announcement bar ---------- */
.store-announcement { color: #FAF0CD; text-align: center; font-size: 13px; font-weight: 600; padding: 9px 16px; letter-spacing: .01em; }
.store-announcement a, .store-announcement span { color: inherit; text-decoration: none; display: inline-flex; gap: 8px; align-items: center; }
.store-announcement i { color: var(--c-gold-light); }

/* ---------- header additions ---------- */
.header-search-console { position: relative; }
.header-search-input-wrap { position: relative; }
.header-search-input-wrap input[type="search"]::-webkit-search-cancel-button { display: none; }
.search-suggest { position: absolute; top: calc(100% + 10px); left: 0; right: 0; background: #fff; border: 1px solid var(--c-border); border-radius: 16px; box-shadow: var(--shadow-hover); z-index: 300; overflow: hidden; }
.search-suggest a { display: flex; align-items: center; gap: 12px; padding: 10px 14px; color: var(--c-ink); text-decoration: none; border-bottom: 1px solid var(--c-border-subtle); }
.search-suggest a:hover { background: var(--c-surface-hover); }
.search-suggest img, .search-suggest .sugg-art { width: 34px; height: 48px; object-fit: cover; border-radius: 4px; flex-shrink: 0; }
.search-suggest strong { display: block; font-size: 14px; }
.search-suggest small { color: var(--c-ink-muted); font-size: 12px; }
.search-suggest em { margin-left: auto; font-style: normal; font-weight: 800; color: var(--c-gold-dark); font-size: 13px; }
.search-suggest .sugg-all { justify-content: center; font-weight: 700; color: var(--c-brand-green); font-size: 13px; border-bottom: 0; }
.sugg-none { padding: 16px; text-align: center; color: var(--c-ink-muted); font-size: 14px; }
a.tool-icon-btn { text-decoration: none; }
.lang-switch-btn { display: inline-flex; align-items: center; gap: 7px; height: 42px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--c-border); background: #fff; color: var(--c-brand-green); font-weight: 700; font-size: 14px; text-decoration: none; transition: .2s; white-space: nowrap; }
.lang-switch-btn:hover { border-color: var(--c-gold); color: var(--c-gold-dark); }
.lang-switch-btn i { color: var(--c-gold); }
.lang-switch-btn[lang="ar"] { font-family: 'Cairo', sans-serif; }
.mobile-menu-btn { display: none; background: none; border: 0; font-size: 20px; color: var(--c-brand-green); cursor: pointer; padding: 6px; }
.dep-item-all { border-top: 1px dashed var(--c-border); }
.nav-links-sleek li { position: relative; }
.nav-sub-chevron { font-size: 9px; margin-left: 3px; opacity: .7; }
.nav-sub-menu { position: absolute; top: 100%; left: 0; min-width: 220px; background: #fff; border: 1px solid var(--c-border); border-radius: 14px; box-shadow: var(--shadow-hover); padding: 8px; opacity: 0; visibility: hidden; transform: translateY(6px); transition: .2s var(--ease); z-index: 200; }
.nav-links-sleek li.has-sub:hover .nav-sub-menu, .nav-links-sleek li.has-sub:focus-within .nav-sub-menu { opacity: 1; visibility: visible; transform: none; }
.nav-sub-menu a { display: block; padding: 9px 12px; border-radius: 10px; color: var(--c-ink); text-decoration: none; font-size: 14px; font-weight: 600; }
.nav-sub-menu a:hover { background: var(--c-gold-pale); color: var(--c-brand-green); }
.sleek-nav-link.active { color: var(--c-gold) !important; }

/* ---------- hero text slide (no English artwork uploaded yet) ---------- */
.banner-text-slide { width: 100%; height: 100%; min-height: 100%; background-size: cover; background-position: center; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 14px; padding: 40px; color: #FAF0CD; background-color: #003328; }
.banner-text-kicker { font-size: 13px; letter-spacing: .25em; text-transform: uppercase; color: var(--c-gold-light); }
.banner-text-slide strong { font-size: clamp(26px, 3.4vw, 46px); line-height: 1.15; font-weight: 800; color: #fff; max-width: 680px; }
.banner-text-sub { font-size: 17px; opacity: .85; max-width: 560px; }
.banner-text-btn { margin-top: 8px; display: inline-flex; align-items: center; gap: 10px; padding: 12px 26px; border-radius: 999px; background: var(--c-gold-soft); color: #00241B; font-weight: 800; font-size: 14px; }
.banner-link-wrapper { display: block; width: 100%; height: 100%; }

/* ---------- category cards (links) ---------- */
a.artisan-category-card { text-decoration: none; color: inherit; }
.cat-card-btn { cursor: pointer; }
.cat-card-fallback { display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 30% 20%, #0d5b45, #002b20); color: var(--c-gold-light); font-size: 54px; }
.categories-grid-section { padding: 10px 0 70px; }
.categories-page-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 26px; }
.categories-page-grid .artisan-category-card { width: auto; min-width: 0; }

/* ---------- book cards ---------- */
a.product-item-cover { display: block; text-decoration: none; }
.product-title a { color: inherit; text-decoration: none; }
a.book-cat-tag { text-decoration: none; }
.btn-add-cart-artisan.is-out { text-decoration: none; background: transparent; border: 1px solid var(--c-border); color: var(--c-ink-muted); }

/* ---------- home rows ---------- */
.home-books-section, .home-authors-section, .home-blog-section { padding: 46px 0; }
.home-row-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 24px; padding-bottom: 14px; border-bottom: 1px solid var(--c-border); }
.home-row-head h2 { font-size: 28px; font-weight: 800; color: var(--c-brand-green); margin: 2px 0 0; letter-spacing: -.01em; }
.home-row-head p { color: var(--c-ink-muted); margin: 4px 0 0; font-size: 15px; }
.home-row-kicker { color: var(--c-gold); font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.home-row-more { display: inline-flex; align-items: center; gap: 8px; color: var(--c-brand-green); font-weight: 700; font-size: 14px; text-decoration: none; white-space: nowrap; }
.home-row-more:hover { color: var(--c-gold-dark); }
.home-books-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.home-books-section:nth-of-type(even) { background: linear-gradient(180deg, transparent, rgba(241, 238, 219, .55), transparent); }

.authors-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 18px; }
.author-card-seal { width: 64px; height: 64px; border-radius: 50%; background: radial-gradient(circle at 30% 25%, #0d5b45, #002b20); color: var(--c-gold-light); display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 22px; border: 2px solid var(--c-gold-light); flex-shrink: 0; margin-bottom: 6px; }

.home-blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.article-mini-card { background: #fff; border: 1px solid var(--c-border); border-radius: var(--radius-lg); overflow: hidden; text-decoration: none; color: var(--c-ink); box-shadow: var(--shadow-card); transition: .3s var(--ease); display: flex; flex-direction: column; }
.article-mini-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-hover); }
.article-mini-img { height: 180px; background-size: cover; background-position: center; position: relative; }
.article-mini-cat { position: absolute; top: 12px; right: 12px; background: rgba(0, 41, 31, .85); color: #FAF0CD; font-size: 12px; font-weight: 700; padding: 4px 12px; border-radius: 999px; font-family: 'Cairo', sans-serif; }
.article-mini-body { padding: 18px 20px 20px; font-family: 'Cairo', sans-serif; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.article-mini-body h3 { font-size: 17px; font-weight: 800; color: var(--c-brand-green); line-height: 1.6; margin: 0; }
.article-mini-body p { font-size: 14px; color: var(--c-ink-muted); line-height: 1.8; margin: 0; }
.article-mini-meta { margin-top: auto; font-size: 12.5px; color: var(--c-gold-dark); }

/* no newsletter box on the home page */
body.page-home .footer-newsletter { display: none; }

/* ---------- footer ---------- */
.store-footer { background: #00241B; color: rgba(251, 249, 237, .78); padding: 0 0 26px; margin-top: 40px; border-top: 3px solid var(--c-gold); position: relative; }
.footer-ornament { display: flex; align-items: center; justify-content: center; gap: 14px; transform: translateY(-50%); }
.footer-ornament span { width: 90px; height: 1px; background: var(--c-gold); }
.footer-ornament i { font-style: normal; color: var(--c-gold-light); background: #00241B; width: 34px; height: 34px; border-radius: 50%; border: 2px solid var(--c-gold); display: flex; align-items: center; justify-content: center; font-size: 14px; }
.footer-newsletter { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 22px 0 34px; border-bottom: 1px solid rgba(186, 155, 50, .22); }
.footer-newsletter h3 { color: #fff; font-size: 22px; margin: 0 0 4px; }
.footer-newsletter p { margin: 0; font-size: 14px; }
.footer-newsletter-form { display: flex; align-items: center; background: #fff; border-radius: 999px; padding: 6px 6px 6px 18px; min-width: min(440px, 100%); gap: 10px; }
.footer-newsletter-form i { color: var(--c-gold-dark); }
.footer-newsletter-form input { flex: 1; border: 0; outline: 0; font: inherit; font-size: 14.5px; color: var(--c-ink); background: transparent; min-width: 0; }
.footer-newsletter-form button { border: 0; border-radius: 999px; padding: 11px 22px; background: var(--c-brand-green); color: #fff; font-weight: 700; cursor: pointer; font-size: 14px; white-space: nowrap; }
.footer-newsletter-form button:hover { background: var(--c-gold-dark); }
.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr) 1.3fr; gap: 34px; padding: 40px 0 34px; }
.footer-brand { display: flex; align-items: center; gap: 12px; text-decoration: none; margin-bottom: 14px; }
.footer-brand img { height: 50px; }
.footer-brand strong { display: block; color: #FAF0CD; font-size: 20px; }
.footer-brand span { color: var(--c-gold); font-size: 12.5px; }
.footer-about { font-size: 14px; line-height: 1.75; margin: 0 0 18px; }
.footer-socials { display: flex; gap: 10px; }
.footer-socials a { width: 38px; height: 38px; border-radius: 50%; border: 1px solid rgba(186, 155, 50, .45); display: flex; align-items: center; justify-content: center; color: var(--c-gold-light); text-decoration: none; transition: .25s; }
.footer-socials a:hover { background: var(--c-gold); color: #00241B; }
.footer-links-col h4, .footer-contact-col h4 { color: var(--c-gold-light); font-size: 15px; margin: 0 0 16px; padding-bottom: 10px; border-bottom: 1px solid rgba(186, 155, 50, .25); letter-spacing: .02em; }
.footer-links-col ul, .footer-contact-col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.footer-links-col a { color: rgba(251, 249, 237, .8); text-decoration: none; font-size: 14px; transition: .2s; }
.footer-links-col a:hover { color: var(--c-gold-light); padding-left: 4px; }
.footer-contact-col li { display: flex; gap: 12px; font-size: 14px; line-height: 1.6; }
.footer-contact-col i { color: var(--c-gold); width: 16px; margin-top: 4px; flex-shrink: 0; }
.footer-contact-col a { color: rgba(251, 249, 237, .85); text-decoration: none; }
.footer-contact-col a:hover { color: var(--c-gold-light); }
.footer-bottom { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding-top: 22px; border-top: 1px solid rgba(186, 155, 50, .22); font-size: 13px; flex-wrap: wrap; }
.footer-pay { display: flex; align-items: center; gap: 12px; }
.footer-pay i { font-size: 24px; color: rgba(251, 249, 237, .7); }
.footer-currency { padding: 3px 10px; border-radius: 999px; border: 1px solid rgba(186, 155, 50, .45); color: var(--c-gold-light); font-weight: 700; font-size: 12px; }

/* ---------- cart drawer ---------- */
.cart-sliding-drawer { display: flex; flex-direction: column; }
.cart-head-box h3 { display: flex; align-items: center; gap: 10px; }
.cart-head-box button { background: none; border: 0; cursor: pointer; }
.cart-head-count { font-size: 14px; opacity: .7; }
.cart-incentives { display: flex; flex-direction: column; gap: 8px; padding: 0 20px; }
.cart-sliding-drawer .cart-incentives:not(:empty) { padding-top: 14px; }
.cart-nudge { border-radius: 12px; padding: 10px 12px; background: var(--c-gold-pale); border: 1px solid rgba(186, 155, 50, .35); font-size: 13px; color: #5a4710; }
.cart-nudge.done { background: #e6f5ee; border-color: #a9dcc3; color: #0f6b45; }
.cart-nudge.ship { background: #eef5f2; border-color: #bcd9cd; color: #114b3d; }
.cart-nudge-text { display: flex; gap: 8px; align-items: flex-start; font-weight: 600; }
.cart-nudge-text i { margin-top: 3px; }
.cart-nudge-bar { height: 5px; border-radius: 99px; background: rgba(0, 0, 0, .08); margin-top: 8px; overflow: hidden; }
.cart-nudge-bar i { display: block; height: 100%; border-radius: 99px; background: var(--c-gold-soft); transition: width .4s var(--ease); }
.cart-scroll-list { flex: 1; overflow-y: auto; padding: 4px 20px; }
.cart-item-row { display: flex; gap: 14px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--c-border-subtle); }
.cart-thumb, .cart-page-thumb { width: 52px; height: 72px; object-fit: cover; border-radius: 5px; box-shadow: 0 4px 10px rgba(0, 0, 0, .15); flex-shrink: 0; display: block; }
.cart-thumb-art { display: flex; align-items: center; justify-content: center; padding: 4px; }
.cart-thumb-art span { color: #E0C76C; font-size: 7.5px; text-align: center; line-height: 1.3; overflow: hidden; max-height: 100%; }
.cart-item-info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.cart-item-title { font-size: 14px; font-weight: 700; color: var(--c-ink); text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cart-item-author { font-size: 12px; color: var(--c-ink-muted); }
.cart-item-price { font-size: 13.5px; font-weight: 800; color: var(--c-gold-dark); }
.cart-item-price s { color: var(--c-ink-muted); font-weight: 500; font-size: 12px; margin-left: 4px; }
.cart-item-actions { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.cart-remove { background: none; border: 0; color: #c0392b; cursor: pointer; font-size: 13px; padding: 2px; }
.cart-qty { display: inline-flex; align-items: center; gap: 4px; background: var(--c-sand); border-radius: 8px; padding: 2px; }
.cart-qty button { border: 0; background: #fff; width: 24px; height: 24px; border-radius: 6px; cursor: pointer; font-size: 14px; color: var(--c-ink); }
.cart-qty span { min-width: 22px; text-align: center; font-size: 13px; font-weight: 700; }
.cart-empty { text-align: center; padding: 50px 10px; color: var(--c-ink-muted); display: flex; flex-direction: column; align-items: center; gap: 6px; }
.cart-empty i { font-size: 38px; opacity: .3; margin-bottom: 8px; }
.cart-empty p { font-size: 16px; font-weight: 700; color: var(--c-ink); margin: 0; }
.cart-empty .btn-royal-browse-compact { margin-top: 14px; }
.cart-foot-box { border-top: 1px solid var(--c-border); }
.cart-total-line { display: flex; justify-content: space-between; font-size: 14px; padding: 4px 0; }
.cart-total-line:not(.cart-sub-line):not(.cart-discount-line) { font-size: 17px; font-weight: 800; color: var(--c-brand-green); }
.cart-discount-line { color: #0f6b45; font-weight: 700; }
.cart-ship-note { font-size: 12.5px; color: var(--c-ink-muted); margin: 6px 0 12px; }
a.btn-checkout-link { text-decoration: none; }
.btn-checkout-link { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; padding: 14px; border-radius: 12px; background: var(--c-brand-green); color: #fff; font-weight: 800; border: 0; cursor: pointer; font-size: 15px; }
.btn-checkout-link:disabled { opacity: .55; cursor: not-allowed; }

/* ---------- cart page ---------- */
.cart-page { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 30px; align-items: start; }
.cart-page-items { background: #fff; border: 1px solid var(--c-border); border-radius: var(--radius-lg); padding: 8px 22px; box-shadow: var(--shadow-card); }
.cart-page-row { display: grid; grid-template-columns: 60px minmax(0, 1fr) auto 90px 30px; gap: 18px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--c-border-subtle); }
.cart-page-row:last-child { border-bottom: 0; }
.cart-page-thumb { width: 60px; height: 84px; }
.cart-line { text-align: right; color: var(--c-brand-green); font-size: 15px; }
.cart-page-summary { background: #fff; border: 1px solid var(--c-border); border-radius: var(--radius-lg); padding: 22px; box-shadow: var(--shadow-card); position: sticky; top: 110px; display: flex; flex-direction: column; gap: 6px; }
.cart-page-summary h3 { margin: 0 0 8px; color: var(--c-brand-green); }
.cart-page-summary .cart-incentives { padding: 0 0 8px; }
.cart-grand { border-top: 1px solid var(--c-border); margin-top: 6px; padding-top: 12px !important; }

/* ---------- toasts ---------- */
#toast-container { position: fixed; bottom: 24px; right: 24px; z-index: 99999; display: flex; flex-direction: column; gap: 10px; pointer-events: none; }
.store-toast { display: flex; align-items: center; gap: 10px; background: #00241B; color: #FAF0CD; padding: 12px 18px; border-radius: 12px; box-shadow: var(--shadow-hover); font-size: 14px; font-weight: 600; border-left: 4px solid var(--c-gold); opacity: 0; transform: translateY(10px); transition: .3s var(--ease); max-width: 360px; }
.store-toast.show { opacity: 1; transform: none; }
.store-toast.error { border-left-color: #e05252; }
.store-toast i { color: var(--c-gold-light); }
.store-toast.error i { color: #ff8f8f; }

/* ---------- catalog ---------- */
.filter-drawer-close-btn { display: none; background: none; border: 0; font-size: 18px; color: var(--c-brand-green); cursor: pointer; }
a.discipline-tab, a.price-preset-btn, a.pagination-btn, .active-filter-pill a, a.btn-clear-all-pill, a.btn-reset-filters-link { text-decoration: none; }
.library-search-podium { display: flex; }
.library-disciplines-bar { flex-wrap: wrap; }
.filter-select { width: 100%; padding: 10px 12px; border-radius: 10px; border: 1px solid var(--c-border); background: #fff; font: inherit; font-size: 14px; color: var(--c-ink); }
.filter-group-block.collapsed > :not(.filter-group-title) { display: none; }
.filter-group-title { cursor: pointer; }
.filter-check-item input:disabled + .custom-checkbox { opacity: .6; }
.active-filter-pill a { color: inherit; display: inline-flex; }
.pagination-btn.disabled { pointer-events: none; opacity: .45; }
.pagination-gap { padding: 0 6px; color: var(--c-ink-muted); align-self: center; }
.catalog-empty { text-align: center; padding: 60px 20px; background: #fff; border-radius: var(--radius-lg); border: 1.5px dashed rgba(186, 155, 50, .45); display: flex; flex-direction: column; align-items: center; gap: 8px; }
.catalog-empty i { font-size: 40px; color: var(--c-gold); margin-bottom: 6px; }
.catalog-empty h3 { color: var(--c-brand-green); margin: 0; }
.catalog-empty p { color: var(--c-ink-muted); margin: 0 0 10px; }
.btn-apply-filters { width: 100%; margin-top: 12px; padding: 12px; border: 0; border-radius: 12px; background: var(--c-brand-green); color: #fff; font-weight: 700; }
.author-books-grid { margin-top: 10px; }

/* ---------- book page ---------- */
.book-subtitle-en { font-size: 17px; color: var(--c-ink-muted); margin: -6px 0 6px; font-weight: 500; }
.book-title-other { font-size: 16px; color: var(--c-gold-dark); margin: 0 0 12px; font-weight: 700; text-align: left; }
.book-people-line { display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: 14.5px; margin-bottom: 16px; }
.book-people-line em { font-style: normal; color: var(--c-ink-muted); margin-right: 4px; }
.book-people-line a { color: var(--c-brand-green); font-weight: 700; text-decoration: none; }
.book-people-line a:hover { color: var(--c-gold-dark); }
.stock-status-badge.out { color: #b42318; }
.stock-status-badge.in { color: #15803d; }
.sale-ends-note { color: #b54708; font-size: 13.5px; font-weight: 600; margin: -6px 0 14px; display: flex; gap: 8px; align-items: center; }
.cart-incentive-inline { margin: -4px 0 18px; }
.notify-stock-box { border: 1px solid var(--c-border); background: var(--c-surface-hover); border-radius: 16px; padding: 16px 18px; display: flex; flex-direction: column; gap: 12px; margin-bottom: 18px; }
.notify-stock-box strong { display: block; color: var(--c-brand-green); }
.notify-stock-box span { font-size: 13.5px; color: var(--c-ink-muted); }
.notify-stock-row { display: flex; gap: 8px; }
.notify-stock-row input { flex: 1; padding: 11px 14px; border-radius: 10px; border: 1px solid var(--c-border); font: inherit; }
.notify-stock-row button { padding: 11px 20px; border-radius: 10px; border: 0; background: var(--c-brand-green); color: #fff; font-weight: 700; cursor: pointer; }
.notify-done { color: #0f6b45; font-weight: 700; display: flex; gap: 8px; align-items: center; }
.btn-wishlist-hero.active-wish, .book-cover-floating-wish.active-wish, .btn-float-action.active-wish { color: #c0392b; }
.rich-text { line-height: 1.85; }
.rich-text h2, .rich-text h3 { color: var(--c-brand-green); margin: 1.2em 0 .5em; }
.rich-text p { margin: 0 0 1em; }
.rich-text ul, .rich-text ol { padding-left: 1.3em; margin: 0 0 1em; }
.rich-text blockquote { border-left: 3px solid var(--c-gold); margin: 1em 0; padding: .4em 1em; background: var(--c-surface-hover); border-radius: 0 10px 10px 0; }
.book-author-section { padding: 10px 0 30px; }
.book-author-card { display: flex; gap: 24px; align-items: flex-start; background: #fff; border: 1px solid var(--c-border); border-radius: var(--radius-lg); padding: 28px; box-shadow: var(--shadow-card); }
.book-author-card h3 { margin: 4px 0 2px; font-size: 22px; }
.book-author-card h3 a { color: var(--c-brand-green); text-decoration: none; }
.book-author-card p { color: var(--c-ink-muted); line-height: 1.75; margin: 10px 0 12px; }

/* ---------- simple pages (about, legal, FAQ, contact, authors) ---------- */
.simple-page-hero { padding: 34px 0 30px; background: linear-gradient(180deg, var(--c-sand), transparent); border-bottom: 1px solid var(--c-border-subtle); }
.simple-page-hero h1 { font-size: clamp(28px, 3.2vw, 40px); color: var(--c-brand-green); margin: 8px 0 6px; font-weight: 800; letter-spacing: -.01em; }
.simple-page-hero p { color: var(--c-ink-muted); margin: 0; font-size: 15.5px; }
.simple-page-hero p a { color: var(--c-brand-green); font-weight: 700; }
.simple-page-hero .catalog-breadcrumbs { margin-bottom: 14px; }
.simple-page-intro { max-width: 820px; margin-top: 14px; color: var(--c-ink-muted); }
.simple-page-body { padding: 40px 0 60px; }
.page-paper { background: #fff; border: 1px solid var(--c-border); border-radius: var(--radius-lg); padding: 36px 40px; box-shadow: var(--shadow-card); max-width: 860px; }
.contact-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 30px; align-items: start; }
.contact-layout .page-paper { max-width: none; }
.contact-card { background: #00241B; color: rgba(251, 249, 237, .85); border-radius: var(--radius-lg); padding: 28px; border-top: 3px solid var(--c-gold); }
.contact-card h3 { color: #FAF0CD; margin: 0 0 18px; }
.contact-card ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 18px; }
.contact-card li { display: flex; gap: 14px; font-size: 14.5px; line-height: 1.6; }
.contact-card li i { color: var(--c-gold); margin-top: 4px; width: 18px; }
.contact-card strong { display: block; color: var(--c-gold-light); font-size: 12.5px; text-transform: uppercase; letter-spacing: .08em; }
.contact-card a { color: inherit; text-decoration: none; }
.faq-list { max-width: 860px; display: flex; flex-direction: column; gap: 12px; }
.faq-item { background: #fff; border: 1px solid var(--c-border); border-radius: 16px; box-shadow: var(--shadow-sm); overflow: hidden; }
.faq-item summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 22px; font-weight: 700; color: var(--c-brand-green); font-size: 16px; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary i { color: var(--c-gold); transition: transform .25s; }
.faq-item[open] summary i { transform: rotate(45deg); }
.faq-answer { padding: 0 22px 20px; color: var(--c-ink-muted); line-height: 1.8; }
.author-hero-row { display: flex; gap: 22px; align-items: center; }
.author-seal-lg { width: 92px; height: 92px; font-size: 34px; }
.author-fullname { font-style: italic; }
.author-meta { color: var(--c-gold-dark) !important; font-weight: 600; margin-top: 4px !important; }
.authors-grid-page { padding-top: 10px; }
.not-found { text-align: center; padding: 80px 0; }
.not-found .not-found-code { font-size: 90px; font-weight: 900; color: var(--c-gold); line-height: 1; }
.not-found .library-search-podium { max-width: 560px; margin: 26px auto 18px; }

/* ---------- blog inside the English store ---------- */
.article-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.article-tags a { background: var(--c-gold-pale); color: var(--c-gold-dark); padding: 4px 12px; border-radius: 999px; text-decoration: none; font-size: 13px; }
a.blog-filter-pill, a.tool-action-btn { text-decoration: none; }
#reading-progress-bar { position: fixed; top: 0; left: 0; height: 3px; background: var(--c-gold-soft); z-index: 9999; width: 0; }

/* ---------- responsive ---------- */
@media (max-width: 1200px) {
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-contact-col { grid-column: span 2; }
}
@media (max-width: 1024px) {
  .home-books-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .home-blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cart-page, .contact-layout { grid-template-columns: 1fr; }
  .cart-page-summary { position: static; }
  .mobile-menu-btn { display: block; }
  .header-lower-tier { display: none; }
  body.mobile-nav-open .header-lower-tier { display: block; }
  body.mobile-nav-open .nav-primary-cluster, body.mobile-nav-open .nav-links-sleek { flex-direction: column; align-items: stretch; }
  body.mobile-nav-open .nav-sub-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; padding: 0 0 0 14px; background: transparent; }
  body.mobile-nav-open .nav-prestige-badge { display: none; }
}
@media (max-width: 768px) {
  .home-books-row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  .home-blog-grid { grid-template-columns: 1fr; }
  .home-row-head { flex-direction: column; align-items: flex-start; }
  .home-row-head h2 { font-size: 23px; }
  .footer-newsletter { flex-direction: column; align-items: stretch; text-align: left; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 26px; }
  .footer-brand-col, .footer-contact-col { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .page-paper { padding: 24px 20px; }
  .cart-page-row { grid-template-columns: 52px minmax(0, 1fr) auto; }
  .cart-page-row .cart-line { grid-column: 2; text-align: left; }
  .book-author-card { flex-direction: column; }
  .author-hero-row { flex-direction: column; align-items: flex-start; }
  #toast-container { left: 16px; right: 16px; }
  .lang-switch-btn span { display: none; }
  .lang-switch-btn { width: 42px; padding: 0; justify-content: center; }
}
@media (max-width: 560px) {
  /* two books per row on phones */
  .curated-books-grid, .products-display-grid:not(.view-list), .related-books-grid, .home-books-row { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
  .product-item-card .product-info-col { padding: 10px 10px 12px; }
  .product-item-card .product-title { font-size: 14px; }
  .product-item-card .book-spec-pill { display: none; }
  .product-item-card .product-price-row { flex-wrap: wrap; gap: 6px; }
  .product-item-card .btn-add-cart-artisan span { display: none; }
  .product-item-card .curr-price-tag { font-size: 16px; }
}

/* books page: the category bar and the filters land on the results (below the sticky header) */
#catalog-results, #blog-articles { scroll-margin-top: 120px; }
/* "Clear" in the filter panel: a clear outlined pill instead of a faint text link */
.filter-panel-header .btn-reset-filters-link {
  display: inline-flex; align-items: center; gap: 7px; padding: 6px 13px 6px 11px; border-radius: 999px;
  border: 1px solid rgba(176, 42, 42, .28); background: #fdf3f1; color: #a33a2c;
  font-size: 12.5px; font-weight: 800; text-decoration: none; line-height: 1.4;
  transition: background .2s, color .2s, border-color .2s;
}
.filter-panel-header .btn-reset-filters-link i { font-size: 11px; }
.filter-panel-header .btn-reset-filters-link:hover { background: #a33a2c; border-color: #a33a2c; color: #fff; }
