.store-catalog{background:#fff;color:#171717}.shop-shell{width:min(1320px,calc(100% - 40px));margin-inline:auto}.shop-intro{padding:76px 0 66px;background:#f5f5f3;border-bottom:1px solid #dededb}.shop-intro-grid{display:grid;grid-template-columns:1.4fr .8fr;align-items:end;gap:70px}.shop-eyebrow{margin:0 0 13px;color:#777;font:700 .82rem/1 var(--condensed);letter-spacing:.13em;text-transform:uppercase}.shop-intro h1{max-width:750px;margin:0;color:#111;font:400 clamp(4.7rem,8vw,8rem)/.82 var(--display);letter-spacing:-.02em;text-transform:uppercase}.shop-intro-copy{padding-bottom:8px}.shop-intro-copy>p{margin:0;font-size:1.15rem;line-height:1.55;color:#474747}.shop-intro-copy>a{display:inline-flex;flex-direction:column;margin-top:25px;color:#111;font:700 1rem/1 var(--condensed);letter-spacing:.06em;text-decoration:none;text-transform:uppercase}.shop-intro-copy>a span{margin-top:7px;color:var(--red);font-size:1.35rem}.catalog-controls{position:sticky;z-index:20;top:0;padding:18px 0 15px;background:rgba(255,255,255,.96);border-bottom:1px solid #dedede;backdrop-filter:blur(14px)}.catalog-search{height:58px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:0 18px;border:1px solid #bababa;background:#fff}.catalog-search>span{font-size:1.65rem}.catalog-search input{min-width:0;border:0;outline:0;font:600 1.15rem/1 var(--condensed);color:#111}.catalog-search kbd{padding:4px 7px;border:1px solid #ccc;background:#f5f5f5;color:#777;font:600 .75rem/1 Arial}.store-categories{display:flex;gap:8px;overflow-x:auto;padding-top:13px;scrollbar-width:none}.store-categories::-webkit-scrollbar{display:none}.store-categories button{flex:none;padding:9px 13px;border:1px solid #d1d1d1;border-radius:999px;background:#fff;color:#333;font:700 .84rem/1 var(--condensed);letter-spacing:.035em}.store-categories button[aria-pressed=true]{border-color:#111;background:#111;color:#fff}.catalog-results{padding:48px 0 80px}.results-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:25px}.results-heading h2{margin:0;font:400 clamp(2.2rem,4vw,3.7rem)/.95 var(--display);text-transform:uppercase}.results-heading>label{display:flex;align-items:center;gap:10px;color:#666;font:700 .82rem/1 var(--condensed);text-transform:uppercase;letter-spacing:.08em}.results-heading select{padding:10px 34px 10px 11px;border:1px solid #bbb;background:#fff;color:#111}.store-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.store-card{min-width:0;border:1px solid #dedede;background:#fff;transition:transform .18s ease,box-shadow .18s ease}.store-card:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(0,0,0,.09)}.brand-visual{aspect-ratio:1.2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;padding:25px;background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 8%,white),#fff 72%);border-bottom:1px solid #e7e7e7;color:var(--brand);text-align:center}.brand-visual>span{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:var(--brand);color:#fff;font:400 1.7rem/1 var(--display);letter-spacing:.03em;box-shadow:0 8px 25px color-mix(in srgb,var(--brand) 20%,transparent)}.brand-visual strong{font:700 1rem/1.05 var(--condensed);text-transform:uppercase;letter-spacing:.08em}.store-card-copy{padding:19px 18px 18px}.store-card-copy p{margin:0 0 7px;color:#777;font:700 .72rem/1 var(--condensed);letter-spacing:.1em;text-transform:uppercase}.store-card-copy h3{margin:0;font:400 1.62rem/1 var(--display);text-transform:uppercase}.store-card-copy>span{display:block;min-height:42px;margin-top:9px;color:#555;font-size:.9rem;line-height:1.42}.store-card-copy small{display:block;margin-top:16px;padding-top:12px;border-top:1px solid #ededed;color:#777;font-size:.72rem}.store-empty{padding:70px 20px;text-align:center;background:#f6f6f4}.store-empty strong{font:400 2.3rem/1 var(--display);text-transform:uppercase}.store-empty button{padding:11px 17px;border:0;background:#111;color:#fff;font:700 .9rem var(--condensed);text-transform:uppercase}.catalog-note{padding:42px 0;background:var(--yellow);color:#111}.catalog-note .shop-shell{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:35px}.catalog-note strong{font:400 2rem/1 var(--display);text-transform:uppercase}.catalog-note p{margin:0;line-height:1.45}.catalog-note a{padding:13px 17px;background:#111;color:#fff;text-decoration:none;font:700 1rem/1 var(--condensed);text-transform:uppercase}.retail-store-footer{padding:24px 0;background:#111;color:#fff}.retail-store-footer .shop-shell{display:flex;justify-content:space-between;gap:20px;font:700 .84rem/1 var(--condensed);text-transform:uppercase;letter-spacing:.07em}@media(max-width:1000px){.store-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-intro-grid{grid-template-columns:1fr;gap:30px}.catalog-note .shop-shell{grid-template-columns:1fr}.catalog-note a{width:max-content}}@media(max-width:700px){.shop-shell{width:min(100% - 28px,1320px)}.shop-intro{padding:50px 0 42px}.shop-intro h1{font-size:clamp(4rem,19vw,6rem)}.catalog-controls{top:0}.results-heading{align-items:start;flex-direction:column}.store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.brand-visual{padding:16px}.brand-visual>span{width:58px;height:58px;font-size:1.3rem}.store-card-copy{padding:14px 13px}.store-card-copy h3{font-size:1.3rem}.store-card-copy>span{font-size:.8rem;min-height:46px}.catalog-note{padding:34px 0}.retail-store-footer .shop-shell{flex-direction:column}}@media(max-width:400px){.store-grid{grid-template-columns:1fr}.brand-visual{aspect-ratio:1.7}}
.product-visual{position:relative;display:grid;place-items:center;aspect-ratio:1/1;overflow:hidden;padding:18px;background:#fff;border-bottom:1px solid #e2e2df}
.product-visual img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:none}
.product-visual--pending{background:linear-gradient(145deg,#f3f3f1,#fafaf9)}
.pending-pack{display:flex;min-height:62%;width:58%;flex-direction:column;align-items:center;justify-content:center;padding:16px;border:1px solid #d7d7d3;background:#fff;color:#777;text-align:center}
.pending-pack span,.pending-pack small{font:700 .65rem/1.2 var(--condensed);letter-spacing:.08em;text-transform:uppercase}
.pending-pack b{margin:9px 0;color:#222;font:400 1.25rem/1 var(--display);text-transform:uppercase}
@media(max-width:700px){.product-visual{padding:12px}.store-card-copy h3{font-size:1.12rem;line-height:1.02}}
@media(max-width:400px){.store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-visual{aspect-ratio:1.2}}

/* Hero refinement: compact, signage-led and readable before the catalogue. */
.shop-intro {
  padding: clamp(3rem, 5vw, 4.5rem) 0 clamp(2.75rem, 4.5vw, 4rem);
  background: #f3f3f1;
  box-shadow: inset 0 5px 0 var(--red);
}

.shop-intro-grid {
  width: min(1200px, calc(100% - 40px));
  grid-template-columns: minmax(0, 1.08fr) minmax(21rem, .82fr);
  align-items: center;
  gap: clamp(2.75rem, 5vw, 5rem);
}

.shop-intro .shop-eyebrow {
  display: inline-flex;
  width: max-content;
  margin-bottom: .85rem;
  padding: .44rem .64rem .39rem;
  background: var(--yellow);
  color: var(--ink);
  font-size: .8rem;
  letter-spacing: .09em;
}

.shop-intro h1 {
  max-width: 9.5ch;
  font-size: clamp(4rem, 6.7vw, 5.45rem);
  line-height: .91;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.shop-intro-copy {
  max-width: 34rem;
  padding: 0;
}

.shop-intro-copy > p {
  max-width: 49ch;
  color: #343434;
  font-size: clamp(1.05rem, 1.4vw, 1.18rem);
  line-height: 1.5;
  text-wrap: pretty;
}

.shop-intro-copy > .shop-call {
  display: inline-flex;
  min-height: 3.25rem;
  flex-direction: row;
  align-items: center;
  gap: .85rem;
  margin-top: 1.35rem;
  padding: .85rem 1rem;
  background: var(--ink);
  color: var(--white);
  letter-spacing: .045em;
  transition: background-color .18s ease-out, transform .18s ease-out;
}

.shop-intro-copy > .shop-call:hover {
  background: var(--red);
  transform: translateY(-2px);
}

.shop-intro-copy > .shop-call:focus-visible {
  outline: 3px solid var(--yellow);
  outline-offset: 3px;
}

.shop-intro-copy > .shop-call .shop-call-label {
  margin: 0;
  color: var(--white);
  font-size: .88rem;
}

.shop-intro-copy > .shop-call span:last-child {
  margin: 0;
  color: var(--yellow);
  font-size: 1.12rem;
}

@media (max-width: 1000px) {
  .shop-intro-grid {
    width: min(100% - 40px, 760px);
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }

  .shop-intro-copy {
    max-width: 42rem;
  }
}

@media (max-width: 700px) {
  .shop-intro {
    padding: 2rem 0 2.25rem;
    box-shadow: inset 0 4px 0 var(--red);
  }

  .shop-intro-grid {
    width: min(100% - 28px, 760px);
    gap: 1.1rem;
  }

  .shop-intro h1 {
    max-width: 8.8ch;
    font-size: clamp(3.1rem, 11vw, 4rem);
    line-height: .92;
  }

  .shop-intro-copy > p {
    font-size: 1rem;
    line-height: 1.48;
  }

  .shop-intro-copy > .shop-call {
    width: 100%;
    justify-content: space-between;
    margin-top: 1.15rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .shop-intro-copy > .shop-call {
    transition: none;
  }
}
