/* ==========================================================================
   Product archives: header, toolbar, filters (aside/drawer), chips, pagination
   ========================================================================== */
.archive { padding-block-start: var(--s-5); }
.archive__header { margin-block-end: var(--s-6); max-width: 760px; }
.archive__title { margin-block-end: var(--s-3); }
.archive__layout { display: grid; gap: var(--s-6); }
@media (min-width: 1024px) { .archive__layout { grid-template-columns: 240px 1fr; gap: var(--s-7); align-items: start; } .archive__aside { position: sticky; top: calc(var(--header-h) + 48px + var(--s-4)); } }

.toolbar { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); flex-wrap: wrap; padding-block: var(--s-3); border-block: var(--hair); margin-block-end: var(--s-5); font-size: var(--fs-sm); }
.toolbar__count { margin: 0; color: var(--c-ink-2); }
.toolbar__actions { display: flex; align-items: center; gap: var(--s-3); margin-inline-start: auto; }
.woocommerce-ordering select { min-height: 40px; padding-block: 0; border: 0; border-block-end: var(--hair); border-radius: 0; background: transparent; font-size: var(--fs-sm); }
.toolbar__filters { display: none; }
.chips { display: flex; flex-wrap: wrap; gap: var(--s-2); width: 100%; }
.chip { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border: var(--hair); border-radius: var(--r-1); font-size: var(--fs-xs); }
.chip:hover { text-decoration: none; border-color: var(--c-ink); }
.chip__x { color: var(--c-ink-2); }

.filters__head { display: none; }
.facet { border-block-end: var(--hair); }
.facet__summary { list-style: none; cursor: pointer; padding-block: var(--s-3); font-size: var(--fs-sm); display: flex; justify-content: space-between; align-items: center; }
.facet__summary::-webkit-details-marker { display: none; }
.facet__summary::after { content: ""; width: 8px; height: 8px; border-inline-end: 1.5px solid currentColor; border-block-end: 1.5px solid currentColor; transform: rotate(45deg); transition: transform var(--t-fast) var(--ease); }
.facet[open] > .facet__summary::after { transform: rotate(-135deg); }
.facet__body { padding-block: 0 var(--s-4); display: grid; gap: var(--s-2); font-size: var(--fs-sm); }
.facet__links, .facet__options { display: grid; gap: var(--s-2); }
.facet__links a { color: var(--c-ink-2); }
.facet__links a:hover { color: var(--c-ink); text-decoration: none; }
.check { display: flex; align-items: center; gap: var(--s-2); cursor: pointer; }
.check input { width: 18px; height: 18px; margin: 0; accent-color: var(--c-ink); }
.range { display: grid; grid-template-columns: 1fr auto 1fr; gap: var(--s-2); align-items: center; }
.range .input { min-height: 40px; padding-block: var(--s-2); }
.range__sep { color: var(--c-ink-3); }
.facet__bands { margin-block-start: var(--s-2); }
.filters__actions { display: flex; align-items: center; gap: var(--s-4); padding-block-start: var(--s-4); }
.archive__empty { padding-block: var(--s-8); text-align: center; color: var(--c-ink-2); }
.archive__footer { margin-block-start: var(--s-8); border-block-start: var(--hair); padding-block-start: var(--s-6); display: grid; gap: var(--s-6); }
.archive__guide { line-height: var(--lh-loose); color: var(--c-ink-2); margin-inline: 0; }
.archive__related-title { font-size: var(--fs-xs); letter-spacing: var(--ls-caps); color: var(--c-ink-2); font-weight: var(--fw-medium); }
.archive__related-list { display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-4); }

@media (max-width: 1023px) {
  .toolbar__filters { display: inline-flex; }
  .archive__aside { position: fixed; inset-block: 0; inset-inline-start: 0; width: min(88vw, 400px); background: var(--c-bg); z-index: var(--z-drawer); transform: translateX(100%); transition: transform var(--t-med) var(--ease); overflow-y: auto; padding: 0 var(--s-4) calc(var(--s-6) + env(safe-area-inset-bottom)); box-shadow: 0 0 0 1px var(--c-line); }
  [dir="ltr"] .archive__aside { transform: translateX(-100%); }
  .archive__aside.is-open { transform: none; }
  .filters__head { display: flex; align-items: center; justify-content: space-between; min-height: var(--header-h); border-block-end: var(--hair); margin-block-end: var(--s-2); }
  .filters__title { font-size: var(--fs-md); margin: 0; }
  .filters__close { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; }
}

/* SEO landing pages */
.landing .toolbar { justify-content: flex-start; }
.landing__guide { margin: var(--s-8) auto 0; }
.landing__guide--accordion { border-block: var(--hair); }
.landing__guide-summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; padding-block: var(--s-4); }
.landing__guide-summary::-webkit-details-marker { display: none; }
.landing__guide-title { margin: 0; font-size: var(--fs-md); font-weight: var(--fw-medium); }
.landing__guide--accordion .prose { padding-block-end: var(--s-5); }
.landing__faq { margin: var(--s-8) auto 0; }
.landing__faq-title { font-size: var(--fs-lg); margin-block-end: var(--s-4); }
.faq { border-block-start: var(--hair); }
.faq:last-of-type { border-block-end: var(--hair); }
.faq__q { list-style: none; cursor: pointer; padding-block: var(--s-3); font-weight: var(--fw-medium); display: flex; justify-content: space-between; gap: var(--s-3); }
.faq__q::-webkit-details-marker { display: none; }
.faq__q::after { content: "+"; color: var(--c-ink-2); font-weight: var(--fw-regular); }
.faq[open] > .faq__q::after { content: "−"; }
.faq__a { padding-block: 0 var(--s-4); color: var(--c-ink-2); }
.archive__related.container--narrow { margin-block-start: var(--s-8); }
.landing .pagination, .landing .page-numbers { margin-block-start: var(--s-7); }
.article__related { margin-block-start: var(--s-6); border-block-start: var(--hair); padding-block-start: var(--s-5); }
