#category-strip {
  min-width: 0;
  color: var(--pale);
  padding: 14px 0 2px;
}
.dis-categories {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  max-width: 100%;
}
.dis-chip {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 40px;
  padding: 5px 13px;
  border: 1px solid var(--dark-rule);
  border-radius: 999px;
  background: transparent;
  color: inherit;
  font: 500 12px/1.3 var(--sans, sans-serif);
  cursor: pointer;
}
.category-icon { display:inline-block; flex:none; width:1.2em; text-align:center; font:16px/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; }
.category-label { white-space:nowrap; }
.site-header nav a, #category-strip nav a { align-items:center; gap:7px; }
.site-header nav a { display:inline-flex; }
@media (min-width:861px) {
  .site-header .nav-inner { gap:clamp(12px,2vw,28px); }
  .site-header .brand, .site-header .nav-actions { flex-shrink:0; }
  .site-header .nav-inner nav { flex:1; min-width:0; gap:clamp(14px,1.8vw,28px); overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; }
  .site-header nav a { flex:none; }
}
.dis-chip:hover { background: var(--dark-hover); }
.dis-chip[aria-pressed="true"] {
  color: var(--night);
  background: var(--gold);
  border-color: var(--gold);
}
.dis-chip[aria-pressed="true"] .category-label { font-weight:700; }
.dis-chip:focus-visible, .dis-more:focus-visible, .dis-link:focus-visible {
  outline: 2px solid var(--brass);
  outline-offset: 2px;
}
#discovery-feed { padding: clamp(14px, 2.5vw, 32px) 0 clamp(25px, 4vw, 48px); }
.dis-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: clamp(8px, .9vw, 16px);
}
.dis-empty {
  grid-column: 1 / -1;
  margin: 0;
  padding: clamp(32px, 6vw, 72px) 12px;
  color: var(--muted);
  text-align: center;
}
.dis-card {
  position: relative;
  min-width: 0;
  isolation: isolate;
  overflow: hidden;
  border-radius: clamp(16px, 1.6vw, 26px);
  background: var(--paper);
  border: 1px solid var(--rule);
}
.dis-link { display: flex; flex-direction: column; width: 100%; height: 100%; padding: 0; border: 0; background: transparent; text-align: left; color: var(--ink); cursor: pointer; }
.dis-card:has(:focus-visible) { outline: 3px solid var(--brass); outline-offset: 2px; }
.dis-photo { position: relative; display: grid; place-items: center; overflow: hidden; background: var(--paper-2); }
.dis-card .dis-photo { flex: none; width: 100%; height: auto; aspect-ratio: 1.12; }
.dis-photo img { display: block; width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; }
.dis-card img[src$="rental-mustang.jpg"] { object-position: 50% 65%; }
.dis-card img[src$="venue-party.jpg"] { object-position: 50% 62%; }
.dis-card img[src$="fabric-velvet.webp"] { object-position: 63% 48%; }
.dis-card img[src$="tap-ultraboost-light.jpg"] { object-position: 50% 68%; }
.dis-card img[src$="discover-scarf.webp"] { object-position: 50% 66%; }
.dis-contained { background: var(--paper); }
.dis-contained img { object-fit: contain; padding: 8%; }
.dis-heart {
  position: absolute; right: 8px; top: 8px; z-index: 1;
  width: 44px; height: 44px; padding: 0; display: grid; place-items: center;
  border-radius: 50%; color: var(--ink); background: #fffffff0;
}
.dis-heart svg { height: 21px; width: 21px; stroke: currentColor; stroke-width: 1.5; fill: none; }
.dis-heart[aria-pressed="true"] { background: var(--wine); color: var(--on-dark); }
.dis-heart[aria-pressed="true"] svg { fill: currentColor; }
.dis-heart:active { transform: scale(.94); }
.dis-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: .24em; margin: 0; }
.dis-card .dis-price {
  margin-top: auto;
  color: var(--wine);
  font: 650 clamp(14px,1.1vw,17px)/1.35 var(--sans);
  font-variant-numeric: tabular-nums;
}
.dis-card-copy { display:flex; flex:1; flex-direction:column; gap:7px; width:100%; padding:15px 16px 16px; border-top:1px solid var(--rule); }
.dis-card-title { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; font:600 clamp(18px,1.5vw,23px)/1.12 var(--serif); text-wrap:balance; }
.dis-card-description { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; margin:0 0 4px; color:var(--muted); font:400 13px/1.45 var(--sans); }
.dis-price strong { font: inherit; }
.dis-price span { font-size: .79em; font-weight: 400; }
.dis-credit,.dis-when,.dis-photo-missing { color: var(--muted); font: 400 13px/1.45 var(--sans); }
.dis-studio { color: var(--wine); margin-left: 12px; font-size: 13px; text-decoration: underline; }
.dis-more {
  display: block;
  margin: 20px auto 0;
  padding: 9px 19px;
  min-height: 42px;
  border: 1px solid var(--rule);
  background: transparent;
  color: var(--wine);
  border-radius: 30px;
  cursor: pointer;
  font: 600 12px/1.3 var(--sans, sans-serif);
}
.dis-more:hover { background: var(--paper-2); }
.dis-more[hidden] { display: none; }
dialog.dis-preview {
  width: min(420px, 92vw);
  border: 1px solid var(--rule);
  border-radius: 22px;
  padding: 0;
  color: var(--ink);
  background: var(--paper);
  overscroll-behavior: contain;
}
.dis-preview .dis-photo { height: auto; aspect-ratio: 1.5; max-height: 36dvh; }
.dis-preview .dis-photo img { object-fit: cover; }
.dis-preview .dis-contained img { object-fit: contain; }
.dis-photo-credit {
  position: absolute; bottom: 8px; right: 10px; padding: 2px 7px; border-radius: 12px;
  background: var(--badge); color: var(--paper); font: 400 10px/1.45 var(--sans);
}
.dis-preview-copy h2 { margin-block: 0; }
.dis-category { margin: 0 0 7px; color: var(--brass); font: 600 11px/1.4 var(--sans); letter-spacing: .065em; }
.dis-preview-copy .dis-credit { margin: 6px 0 0; }
.dis-preview-copy > .dis-price { margin-top: 14px; }
.dis-preview-copy > .dis-price span { color: var(--muted); font-size: 13px; }
.dis-specs { margin: 3px 0 0; color: var(--muted); font: 400 13px/1.45 var(--sans); }
.dis-preview-copy > .dis-studio { display:block; margin:12px auto 0; }
.dis-preview:has(.contact-followup[open]) .dis-photo { max-height: 16dvh; }
.dis-preview-close {
  position: absolute;
  z-index: 1;
  top: 9px;
  right: 9px;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid var(--rule);
  border-radius: 50%;
  background: var(--paper);
  color: var(--ink);
  font: 24px/1 var(--sans, sans-serif);
  cursor: pointer;
}
.dis-source {
  display: inline-flex;
  padding: 12px 18px;
  border-radius: 30px;
  background: var(--wine);
  color: var(--paper);
  text-decoration: none;
  font: 600 14px/1.4 var(--sans, sans-serif);
}
.dis-source:focus-visible, .dis-preview-close:focus-visible { outline: 2px solid var(--brass); outline-offset: 2px; }
@media (min-width:761px) and (max-width:1100px) {
  .dis-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .dis-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
  .dis-card .dis-photo { aspect-ratio: .95; }
  .dis-card-copy { padding:11px 12px 13px; gap:6px; }
  .dis-card-title { font-size:18px; }
  .dis-card-description { font-size:12px; }
  .dis-heart { right: 4px; top: 4px; background: transparent; }
  .dis-heart::before { content: ""; background: #fffffff0; border-radius: 50%; position: absolute; inset: 4px; z-index: -1; }
  .dis-heart { isolation: isolate; }
  .dis-heart[aria-pressed="true"] { background: transparent; }
  .dis-heart[aria-pressed="true"]::before { background: var(--wine); }
}
