.supplier-hub, .supplier-detail { padding-block: clamp(1.25rem, 4vw, 3.25rem) 4rem; }
.supplier-hub-intro {
  display: flex;
  align-items: end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.15rem 2rem;
  margin-bottom: 1.5rem;
  padding: clamp(1.35rem, 4vw, 3rem);
  border-radius: var(--radius);
  background: #edf4fc;
}
.supplier-hub-intro .kicker, .supplier-detail-copy .kicker { margin-bottom: .75rem; }
.supplier-hub-intro p { max-width: 37ch; color: var(--muted); }
#hurtownie { scroll-margin-top: 1rem; }
.supplier-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.15rem; }
.supplier-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--white);
  text-decoration: none;
}
.supplier-card:hover { border-color: #ceced3; }
.supplier-card:hover h3 { text-decoration: underline; }
.supplier-card-art { display: grid; aspect-ratio: 2.45; overflow: hidden; place-items: center; background: #dce8f5; }
.supplier-card-art img { width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.supplier-card-monogram { color: var(--accent-ink); font: 3.5rem Georgia, serif; }
.supplier-card-copy {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: clamp(1rem, 2vw, 1.6rem);
}
.supplier-card-tag { color: var(--accent-ink); font-size: .72rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.supplier-card h3 { margin: .35rem 0 .4rem; font: 400 clamp(1.6rem, 3vw, 2.55rem)/1.05 Georgia, serif; }
.supplier-card p, .supplier-office p { color: var(--muted); }
.supplier-card-arrow {
  display: grid;
  width: 2.5rem;
  height: 2.5rem;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  background: #edf4fc;
  color: var(--accent);
}
.supplier-office {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem 2rem;
  margin-top: 1.5rem;
  padding: clamp(1rem, 3vw, 2rem);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}
.supplier-office h2 { margin-bottom: .4rem; font-size: 1.75rem; }
.supplier-back { display: inline-block; margin-bottom: 1rem; color: var(--accent); font-weight: 650; }
.supplier-detail-hero { display: flex; flex-wrap: wrap; overflow: hidden; border-radius: var(--radius); background: #edf4fc; }
.supplier-detail-copy { flex: 1 1 19rem; align-self: center; padding: clamp(1.5rem, 4vw, 3.25rem); }
.supplier-detail-copy p { max-width: 40ch; margin-top: .9rem; color: var(--muted); }
.supplier-detail-art { position: relative; flex: 1 1 21rem; min-width: 0; margin: 0; }
.supplier-detail-art img { width: 100%; height: 100%; max-height: 28rem; min-height: 13rem; object-fit: cover; }
.supplier-detail-art figcaption {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  padding: .25rem .65rem;
  border-radius: 2rem;
  background: var(--white);
  color: var(--muted);
  font-size: .72rem;
}
.supplier-detail-categories, .supplier-detail-content { margin-top: clamp(2rem, 5vw, 4rem); }
.supplier-detail-categories > p { margin-top: .7rem; color: var(--muted); }
.supplier-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; padding: 0; list-style: none; }
.supplier-category-card {
  display: grid;
  height: 100%;
  grid-template-rows: auto 1fr;
  gap: .6rem;
  padding: 8px;
  border: 1px solid #ebebeb;
  border-radius: 28px;
  background: var(--white);
  box-shadow: 0 4px 22px rgb(23 19 41 / 8%);
  font-weight: 650;
  text-decoration: none;
}
.supplier-category-art {
  display: grid;
  position: relative;
  aspect-ratio: 1.5;
  place-items: center;
  overflow: hidden;
  border-radius: 20px;
  background: #ededef;
}
.supplier-category-art > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.supplier-category-sprite { position: absolute; width: 100%; aspect-ratio: 1; top: 50%; transform: translateY(-50%); }
.supplier-category-sprite img { position: absolute; width: 400%; max-width: none; height: 400%; left: calc(-100% * var(--photo-x)); top: calc(-100% * var(--photo-y)); }
.supplier-category-title { display: flex; justify-content: space-between; align-items: start; gap: .4rem; padding: 0 7px 6px; line-height: 1.3; }
.supplier-category-title span { color: #5433eb; }
.supplier-category-card:is(:hover, :focus-visible) { border-color: #ceced3; }
.supplier-category-card:focus-visible { outline: 2px solid #575760; outline-offset: 3px; }
.supplier-availability { padding: .85rem 1rem; border-radius: .8rem; background: #edf4fc; }
.store-catalog-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.store-catalog-heading p { margin-top: .6rem; color: var(--muted); }
.store-show-all { display: inline-block; margin-top: 1.25rem; color: var(--accent-ink); font-weight: 650; }
.store-category-label { margin-top: 1.3rem; color: var(--accent-ink); }
.supplier-category-card[aria-current=true] { color: var(--accent-ink); border-color: #d5d5d9; background: var(--accent-soft); }
.store-checkout-label { color: var(--accent-ink); }
.store-product-nav { margin-bottom: 1rem; }
.gift-guide .gift-note { margin-top: 2rem; }
.site-nav { flex-wrap: wrap; }

/* Each storefront borrows its main colour and background from its assortment. */
.store-theme--klocki-i-odkrycia { --store-canvas: #fffaf4; --store-panel: #ffeedf; --store-accent: #9d2e40; --store-dark: #772134; --store-ink: #351d25; }
.store-theme--forma-i-wnetrze { --store-canvas: #faf8f3; --store-panel: #eee5d4; --store-accent: #72513a; --store-dark: #573b29; --store-ink: #312720; }
.store-theme--dom-w-ladzie { --store-canvas: #f6f8f1; --store-panel: #e8efd9; --store-accent: #435d32; --store-dark: #324a25; --store-ink: #233221; }
.store-theme--male-rzeczy { --store-canvas: #f8f7fc; --store-panel: #ede8f8; --store-accent: #65448d; --store-dark: #4e3274; --store-ink: #2d2338; }
.store-theme { --accent: var(--store-accent); --accent-ink: var(--store-dark); --accent-soft: var(--store-panel); --ink: var(--store-ink); background: var(--store-canvas); }
.store-theme :is(.supplier-detail-hero, .gift-hero, .gift-note, .supplier-availability, .site-foot, .supplier-category-art, .gift-photo) { background: var(--store-panel); }
.store-theme .noticebar { background: var(--store-dark); }
.store-theme .kicker::before { background: currentColor; }
.store-theme .gift-hero h1 { color: var(--store-ink); }
.store-theme .gift-eyebrow, .store-theme .supplier-category-title > span { color: var(--accent-ink); }
.store-theme .btn:not(.ghost):hover { background: var(--accent-ink); }
.store-theme .supplier-category-card { border-color: #e4e4e7; }
.store-theme .supplier-category-card:is(:hover, :focus-visible, [aria-current=true]) { border-color: #ceced3; }
@media (max-width: 780px) { .supplier-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) {
  .supplier-grid { grid-template-columns: 1fr; }
  .supplier-card-art { aspect-ratio: 1.9; }
  .supplier-category-card { padding: 5px; border-radius: 20px; }
  .supplier-category-art { border-radius: 15px; }
  .supplier-category-title { padding-inline: 4px; font-size: .9rem; }
}
