    /* Store-specific Almanac extensions */
    .al-store-grid {
      display: grid;
      grid-template-columns: 260px 1fr;
      gap: 36px;
      align-items: flex-start;
    }
    .al-store-sidebar {
      position: sticky;
      top: 88px;
      align-self: flex-start;
      padding: 20px;
      background: var(--al-paper-soft);
      border: 1px solid var(--al-rule);
    }
    .al-store-sidebar h3 {
      font-family: var(--ff-display);
      font-size: 18px;
      font-weight: 700;
      margin: 0 0 16px;
      color: var(--al-ink);
      letter-spacing: -0.2px;
    }
    .al-filter-group { margin-bottom: 20px; }
    .al-filter-group:last-child { margin-bottom: 0; }
    .al-filter-label {
      display: block;
      font-size: 11px;
      letter-spacing: 2px;
      color: var(--al-honey-deep);
      font-weight: 700;
      text-transform: uppercase;
      margin-bottom: 8px;
    }
    .al-filter-cats {
      display: flex;
      flex-direction: column;
      gap: 4px;
    }
    .al-filter-cat {
      background: transparent;
      border: none;
      text-align: left;
      padding: 8px 10px;
      font-family: var(--ff-body);
      font-size: 14.5px;
      color: var(--al-ink);
      cursor: pointer;
      border-left: 2px solid transparent;
      transition: background 0.12s, border-color 0.12s, color 0.12s;
    }
    .al-filter-cat:hover { background: var(--al-paper); border-left-color: var(--al-honey-light); }
    .al-filter-cat.active {
      background: var(--al-paper);
      border-left-color: var(--al-honey);
      font-weight: 700;
      color: var(--al-honey-deep);
    }
    .al-filter-cat .count {
      float: right;
      color: var(--al-ink-soft);
      font-size: 12px;
      font-weight: 400;
    }
    .al-filter-search {
      width: 100%;
      padding: 10px 12px;
      background: var(--al-white);
      border: 1px solid var(--al-rule);
      font-family: var(--ff-body);
      font-size: 14px;
      color: var(--al-ink);
    }
    .al-filter-search:focus {
      outline: none;
      border-color: var(--al-honey-deep);
    }
    .al-filter-sort {
      width: 100%;
      padding: 10px 12px;
      background: var(--al-white);
      border: 1px solid var(--al-rule);
      font-family: var(--ff-body);
      font-size: 14px;
      color: var(--al-ink);
    }
    .al-price-range {
      display: flex;
      gap: 8px;
      align-items: center;
    }
    .al-price-range input {
      flex: 1;
      width: 0;
      padding: 8px 10px;
      background: var(--al-white);
      border: 1px solid var(--al-rule);
      font-family: var(--ff-body);
      font-size: 13px;
    }
    /* Result count + main column */
    .al-store-results__head {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding-bottom: 14px;
      border-bottom: 1px solid var(--al-rule);
      margin-bottom: 22px;
      gap: 16px;
      flex-wrap: wrap;
    }
    .al-store-results__count {
      font-size: 13px;
      letter-spacing: 1.5px;
      color: var(--al-ink-soft);
      text-transform: uppercase;
      font-weight: 600;
    }
    .al-product-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 22px;
    }

    /* Product card (Almanac) */
    .al-product-card {
      display: flex;
      flex-direction: column;
      background: var(--al-white);
      border: 1px solid var(--al-rule);
      transition: transform 0.15s, box-shadow 0.15s;
    }
    .al-product-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 18px rgba(35, 29, 16, 0.08);
    }
    .al-product-card__media {
      aspect-ratio: 4 / 3;
      background: repeating-linear-gradient(45deg, #ede3c5 0 8px, #f6efdc 8px 16px);
      border-bottom: 1px solid var(--al-rule);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 64px;
      position: relative;
      overflow: hidden;
    }
    .al-product-card__media > img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
    .al-product-card__badge {
      position: absolute;
      top: 12px;
      left: 12px;
    }
    .al-product-card__body {
      padding: 18px;
      display: flex;
      flex-direction: column;
      flex: 1;
    }
    .al-product-card__name {
      font-family: var(--ff-display);
      font-size: 18px;
      font-weight: 600;
      color: var(--al-ink);
      line-height: 1.25;
      letter-spacing: -0.2px;
    }
    .al-product-card__desc {
      margin-top: 6px;
      font-size: 13.5px;
      line-height: 1.5;
      color: var(--al-ink-soft);
      flex: 1;
    }
    .al-product-card__price-row {
      margin-top: 12px;
      display: flex;
      align-items: baseline;
      gap: 8px;
      flex-wrap: wrap;
    }
    .al-product-card__price {
      font-family: var(--ff-display);
      font-size: 22px;
      font-weight: 700;
      color: var(--al-honey-deep);
    }
    .al-product-card__price-list {
      font-size: 13px;
      color: var(--al-ink-soft);
      text-decoration: line-through;
    }
    .al-product-card__member-tag {
      font-size: 10px;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      font-weight: 700;
      background: var(--al-moss);
      color: var(--al-paper);
      padding: 2px 6px;
    }
    .al-product-card__cta {
      margin-top: 12px;
    }

    /* Member-pricing strip */
    .al-member-strip {
      background: var(--al-honey);
      padding: 16px 20px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      flex-wrap: wrap;
      margin-bottom: 28px;
    }
    .al-member-strip__copy {
      color: var(--al-ink);
      font-size: 14.5px;
      font-weight: 600;
    }
    .al-member-strip__copy strong { font-weight: 700; }
    /* Mobile filter toggle */
    .al-filter-toggle-mobile {
      display: none;
      width: 100%;
      padding: 12px;
      background: var(--al-white);
      border: 1px solid var(--al-rule);
      font-family: var(--ff-body);
      font-weight: 600;
      font-size: 14px;
      cursor: pointer;
      margin-bottom: 16px;
      color: var(--al-ink);
    }

    /* Empty state */
    .al-empty {
      grid-column: 1 / -1;
      text-align: center;
      padding: 60px 20px;
      color: var(--al-ink-soft);
    }
    .al-empty__icon {
      font-size: 48px;
      margin-bottom: 12px;
    }
    .al-order-steps {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 12px;
      margin-bottom: 28px;
    }
    .al-order-step {
      padding: 16px;
      background: var(--al-white);
      border: 1px solid var(--al-rule);
      color: var(--al-ink-soft);
      font-size: 14px;
      line-height: 1.5;
    }
    .al-order-step strong {
      display: block;
      margin-bottom: 6px;
      color: var(--al-ink);
    }
    .checkout-modal { max-height: calc(100dvh - 2rem); overflow-y: auto; }
    .order-member-review {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      margin: 4px 0 18px;
      color: var(--al-ink);
      font-size: 14px;
      line-height: 1.45;
      cursor: pointer;
    }
    .order-member-review input {
      width: 20px;
      height: 20px;
      flex: 0 0 auto;
      margin-top: 1px;
    }
    .checkout-modal :focus-visible,
    .cart-drawer :focus-visible,
    .al-store-sidebar :focus-visible,
    .al-product-card :focus-visible,
    .al-filter-toggle-mobile:focus-visible {
      outline: none;
      box-shadow: 0 0 0 2px #fff, 0 0 0 5px #173f27;
    }
    .cart-close,
    .cart-item-qty-btn,
    .cart-item-remove,
    #filtersCloseBtn { min-width: 44px; min-height: 44px; }
    #orderConfirmation:focus { outline: none; }

    /* Mobile breakpoints */
    @media (max-width: 1024px) {
      .al-product-grid { grid-template-columns: repeat(2, 1fr); }
      .al-order-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
    @media (max-width: 768px) {
      .al-store-grid { grid-template-columns: 1fr; gap: 0; }
      .al-product-grid { grid-template-columns: minmax(0, 1fr); }
      .al-order-steps { grid-template-columns: 1fr; }
      .al-store-sidebar {
        position: fixed;
        top: 0; bottom: 0; left: 0;
        width: 86%; max-width: 320px;
        z-index: 200;
        transform: translateX(-100%);
        transition: transform 0.3s ease;
        overflow-y: auto;
        background: var(--al-paper);
      }
      .al-store-sidebar.open { transform: translateX(0); }
      .al-filter-toggle-mobile { display: block; }
      .al-store-overlay {
        display: none;
        position: fixed;
        inset: 0;
        background: rgba(35, 29, 16, 0.5);
        z-index: 199;
      }
      .al-store-overlay.open { display: block; }
    }
