@charset "UTF-8";
:root {
  --paper:#f4eddf;
  --white:#fffdf8;
  --ink:#302019;
  --muted:#756355;
  --brass:#a27b3b;
  --brass-text:#856128;
  --line:#d9cbb5;
  --wine:#682f36;
  --serif:Georgia,'Times New Roman',serif;
  --sans:'Segoe UI',Arial,sans-serif;
  --max:1320px
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font:15px/1.65 var(--sans)
}
button,input,select,textarea {
  font:inherit
}
button,a,input,select,textarea {
  -webkit-tap-highlight-color:transparent
}
button,a {
  touch-action:manipulation
}
button {
  cursor:pointer
}
button:disabled {
  cursor:not-allowed;
  opacity:.55
}
a {
  color:inherit;
  text-decoration:none
}
a:hover {
  text-decoration-thickness:1px
}
img {
  max-width:100%;
  display:block
}
button {
  color:inherit
}
svg {
  fill:none;
  stroke:currentColor;
  stroke-width:1.5
}
h1,h2,h3,p {
  margin:0
}
h1,h2,h3 {
  font-family:var(--serif);
  font-weight:400;
  line-height:1.12
}
h1 {
  font-size:clamp(42px,6vw,86px);
  letter-spacing:-.055em
}
h2 {
  font-size:clamp(32px,3.6vw,54px);
  letter-spacing:-.04em
}
h3 {
  font-size:26px;
  letter-spacing:-.025em
}
p {
  color:var(--muted)
}
button {
  border-radius:0
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {
  outline:3px solid #b68b43;
  outline-offset:4px
}
::selection {
  background:#d9c69c;
  color:var(--ink)
}
[hidden] {
  display:none!important
}
.skip-link {
  position:fixed;
  left:16px;
  top:-80px;
  background:var(--ink);
  color:white;
  z-index:100;
  padding:12px
}
.skip-link:focus {
  top:12px
}
.site-header {
  position:sticky;
  top:0;
  z-index:20;
  min-height:96px;
  padding:20px 3.5%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  background:rgba(244,240,231,.97);
  border-bottom:1px solid var(--line)
}
.wordmark {
  display:flex;
  align-items:center;
  gap:10px;
  font-family:var(--serif);
  font-size:18px;
  letter-spacing:.04em;
  line-height:1.05;
  white-space:nowrap
}
.wordmark small {
  display:block;
  font-family:var(--sans);
  font-size:9px;
  letter-spacing:.3em;
  margin-bottom:6px
}
.wordmark img {
  flex:none
}
.site-header nav {
  display:flex;
  gap:24px;
  font-size:12px;
  align-items:center
}
.site-header nav a {
  position:relative;
  white-space:nowrap
}
.site-header nav a[aria-current=page]:after {
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:-8px;
  height:1px;
  background:var(--brass)
}
.header-actions {
  display:flex;
  align-items:center;
  gap:15px
}
.icon-button {
  border:0;
  background:transparent;
  padding:5px;
  position:relative;
  width:30px;
  height:34px
}
.icon-button svg {
  width:23px;
  height:23px
}
.cart-count {
  font-size:9px;
  position:absolute;
  right:-5px;
  top:-3px;
  min-width:15px;
  height:15px;
  background:var(--brass);
  color:#fff;
  border-radius:50%;
  line-height:15px
}
.menu-toggle {
  display:none
}
.eyebrow {
  font-size:10px;
  font-weight:600;
  letter-spacing:.22em;
  display:block;
  margin-bottom:20px;
  text-transform:uppercase;
  color:var(--brass-text)
}
.section-wrap {
  max-width:var(--max);
  margin:auto;
  padding:84px 4%
}
.section-heading {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin-bottom:35px
}
.section-heading p {
  max-width:430px;
  margin-top:15px
}
.text-link {
  font-size:12px;
  border-bottom:1px solid var(--ink);
  padding-bottom:5px;
  white-space:nowrap
}
.button {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:24px;
  border:1px solid var(--ink);
  background:var(--ink);
  color:var(--white);
  padding:14px 24px;
  min-height:49px;
  font-size:12px;
  font-weight:600;
  letter-spacing:.025em
}
.button:hover {
  background:#32463b;
  border-color:#32463b
}
.button.secondary {
  background:transparent;
  color:var(--ink)
}
.button.light {
  background:var(--paper);
  border-color:var(--paper);
  color:var(--ink)
}
.button.ghost-light {
  background:transparent;
  color:var(--paper);
  border-color:#79867d
}
.button.small {
  min-height:38px;
  padding:8px 14px
}
.button.full {
  width:100%
}
.button-row {
  display:flex;
  gap:16px;
  align-items:center;
  flex-wrap:wrap
}
.trust-ribbon {
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex;
  justify-content:space-evenly;
  gap:20px;
  padding:19px 4%;
  font:11px var(--sans);
  letter-spacing:.12em;
  text-transform:uppercase
}
.trust-ribbon span:before {
  content:'✧';
  color:var(--brass);
  padding-right:15px
}

.product-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px
}
.product-card {
  min-width:0;
  display:flex;
  flex-direction:column
}
.product-picture {
  position:relative;
  background:#e8e3d7;
  overflow:hidden;
  aspect-ratio:4/4.5;
  display:block;
  width:100%;
  border:0;
  padding:0;
  text-align:left
}
.product-picture img {
  width:100%;
  height:100%;
  object-fit:contain;
  transition:transform .4s
}
.product-picture:hover img {
  transform:scale(1.045)
}
.product-badge {
  position:absolute;
  left:14px;
  top:14px;
  background:#f9f5ebed;
  font-size:9px;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:5px 9px;
  z-index:1
}
.product-hover {
  position:absolute;
  bottom:14px;
  right:14px;
  width:33px;
  height:33px;
  display:grid;
  place-items:center;
  background:var(--white);
  border-radius:50%;
  font-size:18px
}
.product-meta {
  font-size:9px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--muted);
  margin-top:16px
}
.product-title {
  font-family:var(--serif);
  font-size:21px;
  line-height:1.25;
  border:0;
  background:none;
  text-align:left;
  padding:5px 0
}
.product-bottom {
  display:flex;
  justify-content:space-between;
  gap:6px;
  font-size:12px;
  margin-top:6px
}
.product-bottom span:last-child {
  font-size:10px;
  color:var(--muted)
}
.product-card-actions {
  display:grid;
  grid-template-columns:1fr 1.25fr;
  gap:8px;
  margin-top:auto;
  padding-top:16px
}
.product-card-actions .button {
  width:100%;
  min-height:40px;
  padding:10px 12px;
  font-size:10px
}
.sample-label {
  font-size:9px;
  color:var(--muted);
  margin-top:4px
}
.dark-section {
  background:linear-gradient(120deg,#25150f,#382119 65%,#261510);
  color:var(--paper)
}
.dark-section p {
  color:#d5c4ae
}
.exchange-editorial {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8%;
  align-items:center
}
.exchange-art {
  position:relative;
  background:#2d3f33;
  aspect-ratio:1.13;
  overflow:hidden
}
.exchange-art>img {
  width:100%;
  height:100%;
  object-fit:contain;
  transform:rotate(-8deg) scale(1.12)
}
.stamp {
  position:absolute;
  right:22px;
  bottom:22px;
  width:105px;
  height:105px;
  border:1px solid #d4bd87;
  border-radius:50%;
  color:#d4bd87;
  display:grid;
  place-content:center;
  text-align:center;
  font:11px/1.6 var(--serif);
  letter-spacing:.1em;
  transform:rotate(12deg)
}
.editorial-copy>p {
  margin:25px 0;
  max-width:430px
}
.editorial-copy h2 {
  font-size:clamp(38px,4.2vw,62px)
}
.detail-list {
  list-style:none;
  margin:25px 0 32px;
  padding:0;
  font-size:12px;
  color:#d0d7cf
}
.detail-list li {
  border-top:1px solid #526154;
  padding:11px 0
}
.detail-list li:before {
  content:'↗';
  color:#c4a260;
  margin-right:15px
}
.maker-grid {
  display:grid;
  grid-template-columns:1.15fr 1fr 1fr;
  gap:25px
}
.maker-story {
  background:#e5dfcf;
  padding:36px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:360px
}
.maker-story p {
  margin:22px 0
}
.maker-story .eyebrow {
  margin-bottom:16px
}
.maker-card {
  border:1px solid var(--line)
}
.maker-card img {
  width:100%;
  height:220px;
  background:#ebe7dc;
  object-fit:contain
}
.maker-card>div {
  padding:25px
}
.maker-card p {
  font-size:12px;
  margin:10px 0 20px
}
.maker-card h3 {
  font-size:25px
}
.private-band {
  margin:0 4% 80px;
  padding:42px 5%;
  border:1px solid #c8c2b2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px
}
.private-band h2 {
  font-size:37px
}
.private-band .eyebrow {
  margin-bottom:12px
}
.private-band p {
  margin-top:13px;
  font-size:13px
}
.booking-teaser {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  align-items:center;
  gap:10%
}
.stage-art {
  height:350px;
  background:radial-gradient(ellipse at 50% 110%,#a48245 0,transparent 50%),linear-gradient(115deg,#15231d,#344837 50%,#15231d);
  border:1px solid #5d6a56;
  position:relative;
  overflow:hidden;
  display:grid;
  place-items:center
}
.stage-art:before,.stage-art:after {
  content:'';
  position:absolute;
  top:-100px;
  width:140px;
  height:600px;
  background:linear-gradient(#d7b97544,transparent);
  transform:rotate(25deg);
  filter:blur(8px)
}
.stage-art:before {
  left:40px
}
.stage-art:after {
  right:40px;
  transform:rotate(-25deg)
}
.stage-art span {
  z-index:1;
  font-family:var(--serif);
  font-size:64px;
  font-style:italic;
  color:#e9dfc8
}
.booking-teaser p {
  margin:22px 0 28px
}
.site-footer {
  padding:0 4% 22px;
  background:linear-gradient(0deg,#1a100de0,#1a100d99 45%,#1a100d00),linear-gradient(90deg,#120b08b3,#120b0840 60%,#120b080d),url('footer-closeup-room-cards.webp') center bottom/cover;
  background-color:#1a100d;
  color:#f4ead6;
  border-top:1px solid #b78e4b
}
.footer-invitation {
  position:relative;
  max-width:var(--max);
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  padding:68px 0 62px;
  border-bottom:1px solid #b78e4b55;
  overflow:hidden
}
.footer-invitation>div,.footer-enter { position:relative; z-index:1; text-shadow:0 2px 12px #120b08; }
.footer-invitation .eyebrow { color:#d5b779; font-size:10px; letter-spacing:.22em; }
.footer-invitation h2 { font-size:clamp(42px,5.3vw,76px); line-height:1.05; margin-top:18px; }
.footer-invitation h2 em { color:#d8b574; font-weight:400; }
.footer-enter { display:flex; align-items:center; gap:28px; border-bottom:1px solid #bfa06a; padding:14px 0; font-size:13px; white-space:nowrap; }
.footer-enter span { font-size:25px; color:#d8b574; }
.footer-sigil { position:absolute; right:7%; top:24px; width:220px; height:260px; opacity:.07; pointer-events:none; }
.booking-opening { margin-top:40px; padding-top:30px; border-top:1px solid var(--line); }
.booking-opening p { margin:14px 0 22px; }
.footer-directory { max-width:var(--max); margin:auto; padding:48px 0; display:grid; grid-template-columns:1.65fr 1fr 1fr 1.15fr; gap:32px; text-shadow:0 1px 8px #120b08; }
.footer-brand .wordmark { font-size:19px; gap:12px; }
.footer-brand p { font-size:12px; color:#c7b59f; margin:20px 0 14px; line-height:1.8; }
.footer-motto { color:#c3a268; font-family:var(--serif); font-size:16px; font-style:italic; }
.footer-directory h3 { color:#d8b574; font-size:17px; letter-spacing:0; margin-bottom:18px; }
.footer-directory nav a { display:block; margin:10px 0; font-size:12px; }
.footer-directory a:hover,.footer-enter:hover { color:#e6c27f; }
.footer-occasion p { color:#c7b59f; font-size:12px; line-height:1.8; margin-bottom:14px; }
.footer-occasion>a { display:inline-block; color:#f0dfb8; border-bottom:1px solid #bfa06a; padding-bottom:5px; font-size:12px; }
@media(max-width:1100px) {
  .footer-directory { grid-template-columns:1.4fr 1fr 1fr; }
  .footer-brand { grid-row:span 2; }
  .footer-occasion { grid-column:2/-1; max-width:340px; }
}
@media(max-width:600px) {
  .site-footer { background-position:70% bottom; }
  .footer-invitation { align-items:flex-start; flex-direction:column; gap:20px; padding:46px 0 34px; }
  .footer-invitation .eyebrow { font-size:9px; }
  .footer-directory { grid-template-columns:1fr 1fr; gap:30px 20px; padding:32px 0; }
  .footer-brand,.footer-occasion { grid-column:1/-1; grid-row:auto; }
  .footer-sigil { right:-40px; }
}
.footer-bottom {
  max-width:var(--max);
  margin:auto;
  border-top:1px solid #b78e4b44;
  padding-top:20px;
  display:flex;
  justify-content:space-between;
  gap:24px;
  font-size:9px;
  color:#bbaa96
}
.footer-bottom button {
  border:0;
  padding:0;
  background:none;
  font-size:10px;
  text-decoration:underline
}
.page-heading {
  padding:60px 4% 45px;
  max-width:var(--max);
  margin:auto;
  border-bottom:1px solid var(--line)
}
.page-heading p {
  max-width:650px;
  margin-top:20px
}
.page-heading h1 {
  font-size:clamp(45px,5vw,70px)
}

/* The Exchange opens from a seated bidder's point of view. */
.auction-house-hero { position:relative; display:flex; align-items:center; min-height:650px; overflow:hidden; background:#160b07; color:#fffaf0; }
.auction-house-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.auction-house-hero:before { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(13,7,4,.94) 0%,rgba(13,7,4,.78) 31%,rgba(13,7,4,.22) 58%,rgba(13,7,4,.08) 100%),linear-gradient(0deg,rgba(13,7,4,.58),transparent 48%); }
.auction-house-hero-copy { position:relative; z-index:2; width:min(620px,88%); margin-left:6%; padding:82px 0 94px; }
.auction-house-hero .breadcrumb { margin-bottom:46px; color:#d8c9b4; }
.auction-house-hero .breadcrumb a { color:#fffaf0; }
.auction-house-hero .eyebrow { color:#e0bd79; }
.auction-house-hero h1 { max-width:610px; margin:18px 0 22px; color:#fffaf0; font-size:clamp(58px,6vw,92px); line-height:.98; letter-spacing:-.04em; text-shadow:0 3px 24px #0008; }
.auction-house-hero h1 em { color:#e0bd79; font-weight:400; }
.auction-house-hero-copy>p { max-width:500px; margin:0 0 30px; color:#eee5d8; font-size:15px; line-height:1.65; }
.auction-house-hero .button { background:#f3ead8; border-color:#f3ead8; color:#17251f; }
.auction-seat-note { position:absolute; right:4%; bottom:30px; z-index:2; color:#dfd1bc; font-size:9px; letter-spacing:.18em; }
@media(max-width:760px) {
  .auction-house-hero { min-height:660px; align-items:flex-end; }
  .auction-house-hero>img { object-position:62% center; }
  .auction-house-hero:before { background:linear-gradient(0deg,rgba(13,7,4,.97) 0%,rgba(13,7,4,.82) 48%,rgba(13,7,4,.18) 82%); }
  .auction-house-hero-copy { width:88%; margin:0 auto; padding:210px 0 74px; }
  .auction-house-hero .breadcrumb { margin-bottom:28px; }
  .auction-house-hero h1 { font-size:clamp(46px,13vw,62px); }
  .auction-house-hero-copy>p { max-width:340px; font-size:14px; }
  .auction-seat-note { right:6%; bottom:24px; }
}

/* The Makers' Market lives in the working basement below the shop. */
.makers-workshop-hero { position:relative; display:flex; align-items:center; min-height:650px; overflow:hidden; background:#170d08; color:#fffaf0; }
.makers-workshop-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.makers-workshop-hero:before { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(13,7,4,.95) 0%,rgba(13,7,4,.78) 31%,rgba(13,7,4,.18) 59%,rgba(13,7,4,.04) 100%),linear-gradient(0deg,rgba(13,7,4,.55),transparent 48%); }
.makers-workshop-hero-copy { position:relative; z-index:2; width:min(640px,88%); margin-left:6%; padding:82px 0 94px; }
.makers-workshop-hero .breadcrumb { margin-bottom:46px; color:#d8c9b4; }
.makers-workshop-hero .breadcrumb a { color:#fffaf0; }
.makers-workshop-hero .eyebrow { color:#e0bd79; }
.makers-workshop-hero h1 { max-width:630px; margin:18px 0 22px; color:#fffaf0; font-size:clamp(58px,6vw,92px); line-height:.98; letter-spacing:-.04em; text-shadow:0 3px 24px #0008; }
.makers-workshop-hero h1 em { color:#e0bd79; font-weight:400; }
.makers-workshop-hero-copy>p { max-width:520px; margin:0 0 30px; color:#eee5d8; font-size:15px; line-height:1.65; }
.makers-workshop-hero .button { background:#f3ead8; border-color:#f3ead8; color:#17251f; }
.makers-workshop-note { position:absolute; right:4%; bottom:30px; z-index:2; color:#dfd1bc; font-size:9px; letter-spacing:.18em; }
@media(max-width:760px) {
  .makers-workshop-hero { min-height:660px; align-items:flex-end; }
  .makers-workshop-hero>img { object-position:64% center; }
  .makers-workshop-hero:before { background:linear-gradient(0deg,rgba(13,7,4,.97) 0%,rgba(13,7,4,.82) 48%,rgba(13,7,4,.16) 82%); }
  .makers-workshop-hero-copy { width:88%; margin:0 auto; padding:210px 0 74px; }
  .makers-workshop-hero .breadcrumb { margin-bottom:28px; }
  .makers-workshop-hero h1 { font-size:clamp(46px,13vw,62px); }
  .makers-workshop-hero-copy>p { max-width:340px; font-size:14px; }
  .makers-workshop-note { right:6%; bottom:24px; }
}
.breadcrumb {
  font-size:11px;
  margin-bottom:30px;
  color:var(--muted)
}
.breadcrumb a {
  text-decoration:underline
}
.catalog-wrap {
  padding-top:30px
}

.section-wrap.shop-category-browser { padding-block: clamp(20px, 3vw, 38px) 12px; }
.shop-category-browser h2 { margin: 0 0 14px; font-size: clamp(22px, 3vw, 30px); }
.shop-category-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.shop-category-heading h2 { margin:0; }
.shop-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.shop-category-grid .shop-category-button { text-align:left; }
.shop-category-grid .shop-category-button::before { content:""; display:inline-block; width:5px; height:5px; background:#ac793e; transform:rotate(45deg); margin-right:9px; vertical-align:middle; }
@media (max-width:760px) { .shop-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.shop-category-button {
  min-height: 44px;
  padding: 9px 15px;
  border: 1px solid #9c724b66;
  background: #fffaf1;
  color: #311c12;
  font: inherit;
  cursor: pointer;
}
.shop-category-button:hover { background: #f1e2ca; }
.shop-category-button[aria-pressed="true"] { background: #341c13; color: #fffaf0; }
.shop-category-button:focus-visible { outline: 2px solid #80501d; outline-offset: 2px; }


/* The Makers' Market uses a workshop-led catalog distinct from the house shop. */
.makers-page-intro { padding-top:76px; padding-bottom:0; }
.makers-intro { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:end; padding-bottom:54px; border-bottom:1px solid var(--line); }
.makers-intro h2 { margin-top:14px; font-size:clamp(38px,4.5vw,62px); line-height:1.02; }
.makers-intro p { max-width:550px; margin-bottom:0; color:var(--muted); line-height:1.7; }
.maker-category-browser { padding:62px 0 20px; }
.maker-category-heading { display:flex; align-items:end; justify-content:space-between; gap:28px; margin-bottom:28px; }
.maker-category-heading h2 { margin-top:12px; font-size:clamp(36px,4vw,56px); }
.maker-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.maker-category-card { min-height:205px; padding:22px; display:flex; flex-direction:column; align-items:flex-start; text-align:left; border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:#f8efdf; color:var(--ink); transition:.2s ease; }
.maker-category-card>span { color:#93612e; font:italic 18px/1 var(--serif); }
.maker-category-card strong { margin-top:26px; font:25px/1.03 var(--serif); }
.maker-category-card small { margin-top:10px; color:var(--muted); font-size:11px; line-height:1.48; }
.maker-category-card em { margin-top:auto; padding-top:16px; color:#8d6234; font-size:9px; font-style:normal; letter-spacing:.12em; text-transform:uppercase; }
.maker-category-card:hover,.maker-category-card.active { color:#fff8eb; background:#3a2116; transform:translateY(-2px); }
.maker-category-card:hover small,.maker-category-card.active small { color:#d8c9b4; }
.maker-category-card:hover>span,.maker-category-card:hover em,.maker-category-card.active>span,.maker-category-card.active em { color:#e0bd79; }
.makers-catalog .product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; align-items:stretch; }
.section-wrap.makers-catalog { position:relative; isolation:isolate; padding-top:104px; background:linear-gradient(90deg,rgba(175,132,67,.025),transparent 16%,transparent 84%,rgba(175,132,67,.025)); }
.section-wrap.makers-catalog::before { content:''; position:absolute; z-index:-1; top:6px; left:50%; width:min(1160px,88%); height:78px; transform:translateX(-50%); background:url('makers-magic-flourish.svg') center/contain no-repeat; opacity:.28; pointer-events:none; }
.section-wrap.makers-catalog::after { content:none; }
.maker-product-card { display:grid; grid-template-rows:auto auto minmax(70px,auto) minmax(54px,auto) minmax(66px,auto) auto; height:100%; }
.maker-card-meta { display:flex; justify-content:space-between; gap:12px; margin:15px 0 9px; color:#8d6234; font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.maker-product-card .product-title { align-self:start; }
.maker-materials { min-height:0; margin-top:10px; color:var(--muted); font-size:12px; line-height:1.5; }
.maker-lead-time { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin:16px 0; padding:12px 0; border-block:1px solid var(--line); color:#72563c; font-size:10px; }
.maker-product-card .button { align-self:end; margin-top:8px; }
.maker-trust { display:grid; grid-template-columns:.8fr 1.6fr; gap:60px; margin-top:90px; padding:70px 0; border-block:1px solid var(--line); }
.maker-trust h2,.maker-custom-callout h2 { margin-top:12px; }
.maker-trust-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.maker-trust-grid article>span { color:#97652f; font:italic 18px/1 var(--serif); }
.maker-trust-grid h3 { margin:22px 0 10px; font-size:22px; }
.maker-trust-grid p { color:var(--muted); font-size:12px; line-height:1.6; }
.maker-custom-callout { display:flex; align-items:center; justify-content:space-between; gap:40px; margin:76px 0 30px; padding:44px; color:#fff8eb; background:#3a2116; }
.maker-custom-callout p { max-width:600px; margin-top:12px; color:#d8c9b4; }
.maker-custom-callout .button { flex:0 0 auto; background:#e0bd79; border-color:#e0bd79; color:#2b180f; }
.maker-detail-status { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0; }
.maker-detail-status span { padding:8px 11px; background:#eee1cb; color:#654429; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }

/* Makers categories sit inside the workshop hero, matching the shop and auction journeys. */
.makers-workshop-hero:has(>.maker-category-browser) { min-height:840px; flex-direction:column; align-items:stretch; justify-content:flex-start; }
.makers-workshop-hero:has(>.maker-category-browser) .makers-workshop-hero-copy { width:min(700px,88%); margin:0 0 0 5.5%; padding:58px 0 36px; }
.makers-workshop-hero>.maker-category-browser { position:relative; z-index:2; width:89%; margin:auto auto 30px; padding:0; color:#fff8eb; }
.makers-workshop-hero .maker-category-heading { align-items:center; margin-bottom:14px; }
.makers-workshop-hero .maker-category-heading h2 { margin-top:7px; color:#fff8eb; font-size:clamp(27px,3vw,40px); }
.makers-workshop-hero .maker-category-heading .text-link { color:#f0cf8c; }
.makers-workshop-hero .maker-category-grid { gap:8px; border:0; }
.makers-workshop-hero .maker-category-card { min-height:116px; padding:14px 16px; border:1px solid #d7ad6190; background:rgba(24,11,6,.66); color:#fff8eb; backdrop-filter:blur(5px); }
.makers-workshop-hero .maker-category-card>span { color:#e9c77f; font-size:14px; }
.makers-workshop-hero .maker-category-card strong { margin-top:10px; font-size:20px; }
.makers-workshop-hero .maker-category-card small { display:none; }
.makers-workshop-hero .maker-category-card em { padding-top:10px; color:#e4c68e; }
.makers-workshop-hero .maker-category-card:hover,
.makers-workshop-hero .maker-category-card.active { border-color:#f0cf8c; background:rgba(80,43,25,.88); transform:translateY(-2px); }
.makers-workshop-hero:has(>.maker-category-browser) .makers-workshop-note { top:32px; bottom:auto; }

@media(max-width:1100px) {
  .makers-catalog .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:950px) {
  .maker-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .maker-trust { grid-template-columns:1fr; gap:34px; }
}
@media(max-width:600px) {
  .makers-workshop-hero:has(>.maker-category-browser) { min-height:0; }
  .makers-workshop-hero:has(>.maker-category-browser) .makers-workshop-hero-copy { width:88%; margin:0 auto; padding:168px 0 34px; }
  .makers-workshop-hero>.maker-category-browser { width:88%; margin:0 auto 28px; }
  .makers-workshop-hero .maker-category-heading { display:flex; align-items:flex-end; }
  .makers-workshop-hero .maker-category-heading h2 { font-size:27px; }
  .makers-workshop-hero .maker-category-grid { grid-template-columns:1fr 1fr; }
  .makers-workshop-hero .maker-category-card { min-height:112px; padding:13px; }
  .makers-workshop-hero .maker-category-card strong { margin-top:9px; font-size:18px; }
  .makers-workshop-hero:has(>.maker-category-browser) .makers-workshop-note { top:22px; }
  .makers-page-intro { padding-top:52px; }
  .makers-intro { grid-template-columns:1fr; gap:28px; }
  .maker-category-heading { display:block; }
  .maker-category-heading .text-link { display:inline-block; margin-top:16px; }
  .maker-category-grid { grid-template-columns:1fr 1fr; }
  .maker-category-card { min-height:184px; padding:17px; }
  .maker-category-card strong { margin-top:19px; font-size:21px; }
  .makers-catalog .product-grid,.maker-trust-grid { grid-template-columns:1fr; }
  .maker-product-card { grid-template-rows:auto; }
  .section-wrap.makers-catalog { padding-top:24px; }
  .section-wrap.makers-catalog::before { display:none; }
  .maker-trust { padding:56px 0; }
  .maker-custom-callout { display:block; margin-top:56px; padding:28px 22px; }
  .maker-custom-callout .button { width:100%; margin-top:24px; }
}
.filter-bar {
  display:flex;
  align-items:end;
  gap:18px;
  flex-wrap:wrap;
  padding-bottom:28px;
  margin-bottom:32px;
  border-bottom:1px solid var(--line)
}
.field {
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0
}
.field label {
  font-size:11px;
  font-weight:600
}
.field input,.field select,.field textarea {
  width:100%;
  min-height:45px;
  border:1px solid #c7c8bc;
  padding:10px 12px;
  border-radius:0;
  background:var(--white);
  color:var(--ink)
}
.field textarea {
  min-height:120px;
  resize:vertical
}
.filter-bar .search-field {
  flex:1;
  min-width:210px
}
.filter-bar .field select {
  min-width:155px
}
.catalog-count {
  font-size:11px;
  color:var(--muted);
  margin-left:auto;
  padding-bottom:12px
}
.catalog-note {
  font-size:11px;
  margin-bottom:25px
}
.empty-state {
  border:1px solid var(--line);
  padding:50px 25px;
  text-align:center;
  grid-column:1/-1
}
.empty-state p {
  margin:15px auto 22px;
  max-width:500px
}
.seller-intro {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:55px;
  align-items:center
}
.seller-intro img {
  height:300px;
  width:100%;
  object-fit:contain;
  background:#e7e1d2
}
.seller-links {
  display:flex;
  gap:15px;
  flex-wrap:wrap;
  margin:25px 0
}
.seller-chip {
  border:1px solid var(--line);
  padding:12px 16px;
  font-size:12px;
  background:var(--white)
}
.form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px
}
.span-two {
  grid-column:1/-1
}
.form-layout {
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:9%;
  align-items:start
}
.form-layout aside p {
  margin:20px 0
}
.form-card {
  padding:35px;
  background:var(--white);
  border:1px solid var(--line)
}
.form-card h2 {
  font-size:32px;
  margin-bottom:25px
}
.form-note {
  font-size:11px;
  margin:18px 0;
  color:var(--muted)
}
.field-error {
  font-size:11px;
  color:#8a3030
}
.form-message {
  padding:15px;
  border-left:3px solid var(--brass);
  background:#ede8dc;
  margin:20px 0;
  white-space:pre-line
}
.form-message.error {
  border-color:#a23b3b;
  background:#faeeee
}
.honeypot {
  position:absolute;
  left:-10000px;
  width:1px;
  height:1px;
  overflow:hidden
}
.format-list {
  margin:25px 0;
  display:grid;
  gap:20px
}
.format-list h3 {
  font-size:23px
}
.format-list p {
  font-size:12px;
  margin-top:7px
}
.private-layout {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8%;
  align-items:center
}
.private-door {
  min-height:430px;
  border:1px solid #b5a372;
  background:var(--ink);
  padding:30px;
  display:grid;
  place-items:center;
  color:#d6bd83;
  position:relative
}
.private-door:before {
  content:'';
  position:absolute;
  inset:16px;
  border:1px solid #8e7f54
}
.private-door>div {
  z-index:1;
  text-align:center;
  font-family:var(--serif);
  font-style:italic;
  font-size:40px
}
.private-door img {
  margin:0 auto 25px;
  filter:sepia(1) brightness(2);
  width:70px
}
.private-copy>p {
  margin:22px 0
}
.status-pill {
  display:inline-block;
  padding:5px 10px;
  font-size:10px;
  background:#e6e0ce;
  letter-spacing:.06em;
  text-transform:uppercase
}
.private-notes {
  white-space:pre-wrap;
  padding:24px;
  background:var(--white);
  border:1px solid var(--line);
  margin:24px 0
}
.workspace-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:25px;
  margin-bottom:28px
}
.workspace-heading h2 {
  font-size:32px
}
.workspace-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:35px
}
.workspace-panel {
  padding:28px;
  border:1px solid var(--line);
  background:var(--white)
}
.workspace-panel h3 {
  margin-bottom:20px
}
.record-row {
  padding:18px 0;
  border-bottom:1px solid var(--line);
  display:flex;
  gap:15px;
  justify-content:space-between;
  align-items:center
}
.record-row h3 {
  font-size:20px;
  margin:0 0 6px
}
.record-row p {
  font-size:12px
}
.helper-links {
  display:flex;
  gap:20px;
  font-size:11px;
  margin-top:35px
}
.helper-links a {
  text-decoration:underline
}
.loading-state {
  padding:100px 5%;
  text-align:center
}
.loading-state h1 {
  font-size:45px
}
.loading-state p {
  margin-top:22px
}
dialog {
  color:var(--ink);
  border:0;
  background:var(--paper);
  padding:0;
  max-height:92vh;
  overflow:auto;
  box-shadow:0 20px 100px #0006
}
dialog::backdrop {
  background:#14221bc9;
  backdrop-filter:blur(3px)
}
.dialog-close {
  position:absolute;
  right:17px;
  top:15px;
  border:1px solid var(--line);
  background:var(--white);
  width:35px;
  height:35px;
  font-size:24px;
  line-height:25px;
  z-index:2
}
.product-dialog {
  width:min(960px,92vw)
}
.product-detail {
  display:grid;
  grid-template-columns:1fr 1.12fr
}
.product-detail-image {
  background:#e4dfd2;
  min-height:500px;
  display:flex;
  align-items:center
}
.product-detail-image img {
  width:100%
}
.product-detail-copy {
  padding:50px 40px 35px
}
.product-detail-copy h2 {
  font-size:40px;
  margin:14px 0
}
.product-detail-copy>p {
  font-size:13px;
  margin:20px 0
}
.product-price {
  font-size:22px;
  font-family:var(--serif)
}
.product-specs {
  margin:22px 0;
  font-size:12px
}
.product-specs>div {
  padding:10px 0;
  border-top:1px solid var(--line);
  display:grid;
  grid-template-columns:105px 1fr;
  gap:10px
}
.product-specs dt {
  color:var(--muted)
}
.product-specs dd {
  margin:0
}
.cart-dialog {
  position:fixed;
  inset:0 0 0 auto;
  width:min(460px,100vw);
  height:100%;
  max-height:100%;
  margin:0;
  padding:34px;
  min-height:100vh
}
.drawer-heading {
  display:flex;
  justify-content:space-between;
  align-items:start;
  gap:15px;
  padding:12px 0 25px;
  border-bottom:1px solid var(--line)
}
.drawer-heading h2 {
  font-size:32px
}
.drawer-heading .eyebrow {
  margin-bottom:14px
}
.static-close {
  position:static;
  flex:none
}
.cart-item {
  display:grid;
  grid-template-columns:70px 1fr;
  gap:18px;
  padding:25px 0;
  border-bottom:1px solid var(--line)
}
.cart-item img {
  width:70px;
  background:#e4dfd2
}
.cart-item h3 {
  font-size:20px
}
.cart-item p {
  font-size:12px;
  margin:5px 0 10px
}
.quantity-controls {
  display:flex;
  align-items:center;
  gap:14px;
  font-size:12px
}
.quantity-controls button {
  border:1px solid var(--line);
  background:var(--white);
  width:29px;
  height:29px
}
.cart-total {
  display:flex;
  justify-content:space-between;
  margin:30px 0;
  font-size:20px;
  font-family:var(--serif)
}
.cart-disclaimer {
  font-size:11px;
  margin:18px 0
}
.demo-dialog {
  width:min(650px,92vw);
  padding:45px
}
.demo-dialog h2 {
  font-size:37px;
  margin-bottom:20px
}
.demo-dialog>p {
  font-size:13px
}
.role-options {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:25px 0
}
.role-option {
  border:1px solid var(--line);
  background:var(--white);
  padding:16px;
  text-align:left
}
.role-option.active {
  border-color:var(--brass);
  background:#e9e0ca
}
.role-option strong {
  display:block;
  font-size:13px
}
.role-option span {
  font-size:10px;
  color:var(--muted)
}
.demo-links {
  display:flex;
  gap:20px;
  font-size:12px;
  margin:22px 0
}
.demo-links a {
  text-decoration:underline
}
.back-to-top {
  position:fixed;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  z-index:45;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  padding:0;
  border:1px solid #d4b477;
  border-radius:50%;
  color:#f5e5c4;
  background:#2b1b14;
  box-shadow:0 4px 18px #0004;
  cursor:pointer;
}
.back-to-top[hidden] { display:none; }
.back-to-top:hover { background:#4b3020; }
.back-to-top svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.toast {
  position:fixed;
  bottom:25px;
  left:50%;
  transform:translateX(-50%);
  z-index:100;
  background:var(--ink);
  border:1px solid #77876b;
  color:var(--paper);
  padding:15px 24px;
  max-width:90vw;
  font-size:12px;
  box-shadow:0 5px 25px #0002
}
.error-panel {
  padding:80px 5%;
  text-align:center
}
.error-panel p {
  margin:20px auto;
  max-width:650px
}
@media(min-width:1500px) {
}
@media(max-width:1150px) {
  .site-header {
    gap:18px
  }
  .site-header nav {
    gap:15px;
    font-size:11px
  }
  .wordmark {
    font-size:15px
  }
  .wordmark img {
    width:31px
  }
  .header-actions {
    gap:8px
  }
  .product-grid {
    gap:18px
  }
  .section-wrap {
    padding-top:65px;
    padding-bottom:65px
  }
}
@media(max-width:900px) {
  .site-header {
    min-height:80px;
    padding:18px 4%
  }
  .menu-toggle {
    display:block
  }
  .site-header nav {
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    padding:20px 6%;
    background:var(--paper);
    border-bottom:1px solid var(--line);
    box-shadow:0 10px 20px #0001;
    font-size:16px;
    flex-direction:column;
    align-items:stretch;
    gap:0
  }
  .site-header nav.open {
    display:flex
  }
  .site-header nav a {
    padding:13px 0;
    border-bottom:1px solid var(--line)
  }
  .site-header nav a[aria-current=page]:after {
    display:none
  }
  .product-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px 20px
  }
  .maker-grid {
    grid-template-columns:1fr 1fr
  }
  .maker-story {
    grid-column:1/-1;
    min-height:auto
  }
  .maker-story h3 {
    font-size:34px
  }
  .private-band {
    align-items:start
  }
  .private-band h2 {
    font-size:32px
  }
  .booking-teaser {
    gap:6%
  }
  .footer-bottom {
    flex-wrap:wrap
  }
  .form-layout {
    grid-template-columns:1fr;
    gap:35px
  }
  .form-layout aside {
    max-width:650px
  }
  .format-list {
    grid-template-columns:repeat(3,1fr);
    gap:25px
  }
  .private-layout {
    gap:5%
  }
  .private-door {
    min-height:370px
  }
  .product-detail-copy {
    padding:55px 25px 28px
  }
  .workspace-grid {
    grid-template-columns:1fr
  }
}
@media(max-width:600px) {
  .site-header {
    min-height:76px;
    gap:10px
  }
  .wordmark {
    font-size:14px;
    gap:8px
  }
  .wordmark small {
    font-size:8px;
    margin-bottom:5px
  }
  .wordmark img {
    width:29px;
    height:33px
  }
  .header-actions {
    gap:4px
  }
  .icon-button {
    width:27px
  }
  .button {
    padding:13px 18px;
    gap:18px;
    min-height:46px;
    font-size:11px
  }
  .button-row {
    gap:20px
  }
  .trust-ribbon {
    justify-content:center;
    gap:14px;
    flex-wrap:wrap;
    font-size:8px;
    padding:15px 4%;
    letter-spacing:.07em
  }
  .trust-ribbon span:before {
    padding-right:7px
  }
  .section-wrap {
    padding:52px 6%
  }
  .section-heading {
    align-items:start;
    gap:20px;
    flex-direction:column;
    margin-bottom:28px
  }
  .section-heading p {
    font-size:13px;
    margin-top:14px
  }
  .section-heading h2 {
    font-size:37px
  }
  .product-grid {
    gap:26px 14px
  }
  .product-picture {
    aspect-ratio:4/5
  }
  .product-badge {
    font-size:7px;
    left:8px;
    top:9px;
    padding:4px 6px;
    max-width:90%
  }
  .product-meta {
    font-size:8px;
    letter-spacing:.07em;
    margin-top:12px
  }
  .product-title {
    font-size:18px
  }
  .product-bottom {
    display:block;
    font-size:12px
  }
  .product-bottom span:last-child {
    display:block;
    font-size:9px;
    margin-top:3px
  }
  .product-hover {
    right:9px;
    bottom:9px;
    width:29px;
    height:29px
  }
  .sample-label {
    font-size:8px
  }
  .exchange-editorial {
    grid-template-columns:1fr;
    gap:35px
  }
  .exchange-art {
    aspect-ratio:1.25
  }
  .editorial-copy h2 {
    font-size:42px
  }
  .editorial-copy>p {
    font-size:13px
  }
  .maker-grid {
    grid-template-columns:1fr;
    gap:20px
  }
  .maker-story {
    padding:27px
  }
  .maker-story h3 {
    font-size:32px
  }
  .maker-story p {
    font-size:13px
  }
  .maker-card {
    display:grid;
    grid-template-columns:40% 60%;
    align-items:center
  }
  .maker-card img {
    height:100%;
    min-height:205px
  }
  .maker-card>div {
    padding:22px 18px
  }
  .maker-card h3 {
    font-size:23px
  }
  .maker-card p {
    font-size:11px
  }
  .private-band {
    margin:0 6% 52px;
    padding:30px 25px;
    flex-direction:column;
    gap:23px
  }
  .private-band h2 {
    font-size:32px
  }
  .booking-teaser {
    grid-template-columns:1fr;
    gap:35px
  }
  .stage-art {
    height:280px
  }
  .stage-art span {
    font-size:55px
  }
  .booking-teaser h2 {
    font-size:40px
  }
  .booking-teaser p {
    font-size:13px
  }
  .site-footer {
    padding:0 6% 20px
  }
  .footer-bottom {
    gap:12px
  }
  .page-heading {
    padding:38px 6% 33px
  }
  .page-heading h1 {
    font-size:48px
  }
  .page-heading p {
    font-size:13px
  }
  .breadcrumb {
    margin-bottom:24px
  }
  .catalog-wrap {
    padding-top:25px
  }
  .filter-bar {
    gap:15px
  }
  .filter-bar .field {
    flex:1;
    min-width:130px
  }
  .filter-bar .search-field {
    flex-basis:100%
  }
  .filter-bar .field select {
    min-width:0;
    font-size:12px
  }
  .catalog-count {
    margin:0;
    width:100%;
    padding:0
  }
  .filter-bar {
    padding-bottom:22px;
    margin-bottom:25px
  }
  .catalog-note {
    font-size:10px
  }
  .seller-intro {
    grid-template-columns:1fr;
    gap:25px
  }
  .seller-intro img {
    height:230px
  }
  .seller-links {
    gap:10px
  }
  .seller-chip {
    font-size:10px;
    padding:10px
  }
  .form-grid {
    grid-template-columns:1fr;
    gap:17px
  }
  .span-two {
    grid-column:auto
  }
  .form-card {
    padding:25px 20px
  }
  .form-card h2 {
    font-size:29px
  }
  .format-list {
    grid-template-columns:1fr;
    gap:23px
  }
  .form-layout aside h2 {
    font-size:35px
  }
  .private-layout {
    grid-template-columns:1fr;
    gap:32px
  }
  .private-door {
    min-height:300px
  }
  .private-copy h2 {
    font-size:37px
  }
  .workspace-heading {
    align-items:start;
    flex-direction:column
  }
  .workspace-panel {
    padding:24px 18px
  }
  .workspace-heading h2 {
    font-size:29px
  }
  .record-row {
    align-items:start;
    flex-direction:column
  }
  .product-dialog {
    width:94vw;
    max-height:94vh
  }
  .product-detail {
    grid-template-columns:1fr
  }
  .product-detail-image {
    min-height:0;
    height:265px
  }
  .product-detail-image img {
    height:100%;
    object-fit:contain
  }
  .product-detail-copy {
    padding:28px 24px
  }
  .product-detail-copy h2 {
    font-size:32px
  }
  .product-specs>div {
    grid-template-columns:88px 1fr;
    font-size:11px
  }
  .cart-dialog {
    padding:22px
  }
  .demo-dialog {
    padding:45px 24px 28px
  }
  .demo-dialog h2 {
    font-size:31px
  }
  .role-options {
    gap:9px
  }
  .role-option {
    padding:13px
  }
  .role-option span {
    font-size:9px
  }
  .toast {
    width:88vw;
    text-align:center;
    bottom:18px
  }
  .helper-links {
    flex-wrap:wrap;
    gap:15px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    transition:none!important;
    animation:none!important
  }
}

/* Immersive shop hero; overlay protects copy contrast at every crop. */
.hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:650px;
  background:#080d0d;
  color:#fffaf0;
  display:flex;
  align-items:flex-start;
}
.hero-background {
  position:absolute;
  inset:0;
  z-index:-2;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 52%;
}
.hero::before {
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(12,7,4,.78) 0%,rgba(12,7,4,.64) 32%,rgba(12,7,4,.15) 62%,rgba(12,7,4,.02) 100%);
}
.hero-copy {
  width:100%;
  max-width:1480px;
  margin:0 auto;
  padding:60px 5% 90px;
}
.hero .eyebrow, .hero h1 em { color:#e0bd79; }
.hero h1 { font-size:clamp(64px,7vw,104px); max-width:1100px; line-height:1; text-shadow:0 2px 20px #0005; }
.hero h1>span { display:block; }
.hero h1 em { font-weight:400; }
.hero-copy>p { max-width:560px; margin:14px 0 24px; color:#f2eee3; font-size:15px; line-height:1.45; }
.hero .button { background:#f3ead8; border-color:#f3ead8; color:#17251f; }
.hero .button.secondary { background:#07100e80; border-color:#cdbb98; color:#fffaf0; }
.hero .button:hover { background:#e0bd79; color:#17251f; border-color:#e0bd79; }
.hero .button-row { gap:12px; }
.hero-footnote { display:block; margin-top:34px; color:#d5cbbb; font-size:10px; letter-spacing:.13em; }
@media(min-width:1500px) { .hero { min-height:710px; } }
@media(max-width:900px) {
  .hero { min-height:610px; }
  .hero-copy { padding:55px 6% 75px; }
  .hero h1 { font-size:72px; }
}
@media(max-width:600px) {
  .hero { min-height:650px; align-items:flex-start; }
  .hero-background { object-position:60% center; }
  .hero::before { background:linear-gradient(0deg,rgba(12,7,4,.96),rgba(12,7,4,.76) 52%,rgba(12,7,4,.12)); }
  .hero-copy { padding:90px 6% 50px; }
  .hero h1 { font-size:clamp(46px,12vw,56px); line-height:1.02; max-width:100%; }
  .hero .eyebrow { font-size:9px; margin-bottom:22px; }
  .hero-copy>p { font-size:14px; max-width:330px; margin:14px 0 22px; }
  .hero .button-row { gap:10px; }
  .hero .button { padding:13px 15px; min-height:46px; }
  .hero-footnote { margin-top:26px; font-size:9px; }
}


/* Auction lots share the house palette while keeping bid information distinct. */
.auction-intro { display:grid; grid-template-columns:1fr 1fr; gap:50px; padding:0 0 40px; border-bottom:1px solid var(--line); margin-bottom:32px; }
.auction-intro h2 { margin-top:12px; }
.auction-intro p { margin-bottom:16px; }
.auction-price { display:flex; align-items:baseline; flex-wrap:wrap; gap:12px; padding:16px 0 10px; }
.auction-price strong { font-family:var(--serif); font-size:32px; font-weight:400; }
.auction-price span { font-size:11px; color:var(--muted); }
.auction-countdown { font-size:12px; color:var(--ink); font-weight:600; margin:4px 0; }
.auction-card .button { margin-top:18px; }
.auction-card .product-picture { aspect-ratio:1.4; }
.auction-card .product-picture img { object-fit:cover; }
.auction-price-pending strong { font-size:22px; }
.auction-image-credit { position:absolute; inset:auto 12px 12px; margin:0; padding:6px 8px; background:#160c08d9; color:#f6ead2; font-size:9px; line-height:1.35; }
.auction-image-credit a { color:inherit; text-decoration:underline; text-underline-offset:2px; }
.auction-detail .product-detail-image { position:relative; overflow:hidden; }
.auction-detail .product-detail-image img { width:100%; height:100%; object-fit:cover; }
.auction-catalog .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
.auction-catalog { padding-top:28px; }
.auction-catalog-heading { display:grid; grid-template-columns:1fr minmax(280px,520px); align-items:end; gap:40px; margin-bottom:24px; }
.auction-catalog-heading .eyebrow { margin-bottom:8px; }
.auction-catalog-heading h2 { margin:0; font-size:clamp(42px,5vw,68px); }
.auction-catalog-heading p { margin:0 0 8px; color:var(--muted); line-height:1.65; }
.auction-controls-panel { margin-bottom:44px; border:1px solid #d7c7aa; background:#f7f0e3; box-shadow:0 18px 42px rgba(64,39,20,.06); }
.auction-controls-panel .auction-status-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin:0; padding:0; border:0; }
.auction-controls-panel .auction-status-tabs button { width:100%; min-height:68px; justify-content:space-between; padding:16px 20px; border:0; border-right:1px solid #d7c7aa; background:#f7f0e3; font:20px/1.1 var(--serif); }
.auction-controls-panel .auction-status-tabs button:last-child { border-right:0; }
.auction-controls-panel .auction-status-tabs button span { min-width:30px; padding:6px 8px; background:#eadfc9; color:#6d4a28; font:11px/1 var(--sans); }
.auction-controls-panel .auction-status-tabs button:hover { background:#eee1cb; }
.auction-controls-panel .auction-status-tabs button.active { background:#2c160f; color:#fff8eb; }
.auction-controls-panel .auction-status-tabs button.active span { background:#e0bd79; color:#2c160f; }
.auction-controls-panel .filter-bar { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:22px; margin:0; padding:24px; border-top:1px solid #d7c7aa; border-bottom:0; background:#f2e7d4; }
.auction-controls-panel .filter-bar label { color:#7d552c; font-size:9px; letter-spacing:.14em; text-transform:uppercase; }
.auction-controls-panel .filter-bar input { height:58px; padding:0 18px; border-color:#cdbb9d; background:#fffdf8; font-size:16px; }
.auction-controls-panel .catalog-count { min-width:88px; padding:18px 15px; border:1px solid #cdbb9d; background:#fffaf0; color:#714c28; text-align:center; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.auction-category-browser { padding-top:18px; }
.auction-category-heading { display:flex; align-items:end; justify-content:space-between; gap:28px; margin-bottom:24px; }
.auction-category-heading h2 { margin-top:10px; }
.auction-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.auction-category-card { min-height:190px; padding:22px; display:flex; flex-direction:column; align-items:flex-start; text-align:left; border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:#f5ecdb; color:var(--ink); transition:.2s ease; }
.auction-category-card>span { color:#9b6b31; font:italic 18px/1 var(--serif); }
.auction-category-card strong { margin-top:28px; font:26px/1 var(--serif); }
.auction-category-card small { margin-top:9px; color:var(--muted); font-size:11px; line-height:1.45; }
.auction-category-card em { margin-top:auto; padding-top:18px; color:#8d6234; font-size:9px; font-style:normal; letter-spacing:.13em; text-transform:uppercase; }
.auction-category-card:hover,.auction-category-card.active { background:#2c160f; color:#fff8eb; }
.auction-category-card:hover small,.auction-category-card.active small { color:#d8c9b4; }
.auction-category-card:hover>span,.auction-category-card:hover em,.auction-category-card.active>span,.auction-category-card.active em { color:#e0bd79; }
.auction-house-hero:has(> .auction-category-browser) { min-height:max(820px,68vw); flex-direction:column; }
.auction-house-hero > .auction-category-browser { position:relative; z-index:2; width:100%; margin-top:auto; padding:12px 4% 18px; }
.auction-house-hero > .auction-category-browser .auction-category-heading { margin-bottom:12px; }
.auction-house-hero > .auction-category-browser .eyebrow { font-size:9px; }
.auction-house-hero > .auction-category-browser h2 { margin:4px 0 0; color:#fff8eb; font-size:clamp(22px,2.3vw,30px); }
.auction-house-hero > .auction-category-browser .text-link { color:#fff8eb; }
.auction-house-hero > .auction-category-browser .auction-category-grid { gap:8px; border:0; }
.auction-house-hero > .auction-category-browser .auction-category-card { min-height:92px; padding:13px 15px; border:1px solid #d0a969a6; background:#180d0968; color:#fff5e4; backdrop-filter:blur(2px); }
.auction-house-hero > .auction-category-browser .auction-category-card > span { font-size:13px; color:#e0bd79; }
.auction-house-hero > .auction-category-browser .auction-category-card strong { margin-top:8px; font-size:20px; }
.auction-house-hero > .auction-category-browser .auction-category-card small { display:none; }
.auction-house-hero > .auction-category-browser .auction-category-card em { padding-top:8px; color:#d9bd89; }
.auction-house-hero > .auction-category-browser .auction-category-card:hover,
.auction-house-hero > .auction-category-browser .auction-category-card.active { background:#553822a8; }
.auction-status-tabs { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:30px; border-bottom:1px solid var(--line); padding-bottom:16px; }
.auction-status-tabs button { display:flex; align-items:center; gap:10px; padding:11px 16px; border:1px solid var(--line); background:transparent; color:var(--ink); font-size:12px; }
.auction-status-tabs button span { min-width:23px; padding:3px 6px; border-radius:20px; background:#e8dcc5; font-size:10px; }
.auction-status-tabs button.active { border-color:#2c160f; background:#2c160f; color:#fff8eb; }
.auction-status-tabs button.active span { background:#e0bd79; color:#2c160f; }
.auction-card-header { display:flex; justify-content:space-between; gap:12px; margin:16px 0 10px; color:#8d6234; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.auction-condition { min-height:38px; margin-top:10px; color:var(--muted); font-size:12px; line-height:1.5; }
.auction-card .auction-price { display:grid; grid-template-columns:1fr auto; align-items:end; gap:3px 12px; }
.auction-card .auction-price span { grid-column:1; }
.auction-card .auction-price strong { grid-column:1; }
.auction-card .auction-price small { grid-column:2; grid-row:1 / 3; align-self:end; }
.auction-card .auction-countdown { padding:9px 0; border-block:1px solid var(--line); }
.auction-live { background:#315d45 !important; }
.auction-sold { background:#5b5146 !important; }
.auction-trust { display:grid; grid-template-columns:.8fr 1.6fr; gap:60px; margin-top:90px; padding:70px 0; border-block:1px solid var(--line); }
.auction-trust h2,.auction-steps h2,.auction-seller-callout h2 { margin-top:12px; }
.auction-trust-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.auction-trust-grid article span { color:#9b6b31; font:italic 18px/1 var(--serif); }
.auction-trust-grid h3 { margin:24px 0 10px; font-size:21px; }
.auction-trust-grid p { color:var(--muted); font-size:12px; line-height:1.6; }
.auction-steps { display:grid; grid-template-columns:.8fr 1.6fr; gap:60px; padding:80px 0; }
.auction-steps ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }
.auction-steps li { display:grid; grid-template-columns:1fr 1.4fr; gap:30px; padding:20px 0; border-bottom:1px solid var(--line); }
.auction-steps li strong { font:22px/1.15 var(--serif); }
.auction-steps li span { color:var(--muted); font-size:13px; line-height:1.55; }
.auction-seller-callout { display:flex; align-items:center; justify-content:space-between; gap:40px; margin-bottom:30px; padding:42px; background:#24130d; color:#fff8eb; }
.auction-seller-callout p { max-width:570px; margin-top:12px; color:#d8c9b4; }
.auction-seller-callout .button { flex:0 0 auto; background:#e0bd79; border-color:#e0bd79; color:#24130d; }
.auction-lot-facts { margin:22px 0; border-top:1px solid var(--line); }
.auction-lot-facts>div { display:grid; grid-template-columns:100px 1fr; gap:18px; padding:12px 0; border-bottom:1px solid var(--line); }
.auction-lot-facts dt { color:#8d6234; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.auction-lot-facts dd { margin:0; font-size:13px; line-height:1.5; }
.auction-bid-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; margin-top:8px; }
.auction-bid-row input { min-width:0; }
.auction-history summary { cursor:pointer; padding:10px 0; font-size:15px; }
.auction-history p { max-width:780px; margin:14px 0; font-size:13px; }
.auction-rules,.auction-sell-guide { margin-top:52px; padding:44px 0; border-block:1px solid var(--line); }
.auction-guide-heading { max-width:760px; margin-bottom:18px; }
.auction-guide-heading h2 { margin:8px 0 10px; }
.auction-guide-heading p { margin:0; max-width:660px; }
.auction-rules ol { list-style:none; margin:0; padding:0; border-top:1px solid var(--line); }
.auction-rules li { display:grid; grid-template-columns:58px 1fr; gap:22px; padding:17px 0; border-bottom:1px solid var(--line); }
.auction-rules li > span,.seller-guide-grid article > span { color:var(--brass-dark); font-size:12px; font-weight:700; letter-spacing:.16em; }
.auction-rules h3,.seller-guide-grid h3 { margin:0 0 8px; font-size:20px; }
.auction-rules li p,.seller-guide-grid p { margin:0; max-width:820px; font-size:14px; line-height:1.7; }
.auction-rule-note { display:grid; grid-template-columns:220px 1fr; gap:28px; margin-top:28px; padding:24px 28px; background:var(--ink); color:var(--cream); }
.auction-rule-note strong { font-family:var(--serif); font-size:20px; }
.auction-rule-note p { margin:0; color:rgba(255,255,255,.78); }
.seller-guide-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border:1px solid var(--line); }
.seller-guide-grid article { min-width:0; padding:24px 20px; border-right:1px solid var(--line); }
.seller-guide-grid article:last-child { border-right:0; }
.seller-standards { display:grid; grid-template-columns:180px 1fr 180px 1fr; gap:24px 30px; margin-top:28px; padding:30px; background:#f2e7d4; }
.seller-standards h3 { margin:0; font-size:18px; }
.seller-standards ul { margin:0; padding-left:20px; }
.seller-standards li { margin-bottom:10px; line-height:1.55; }
@media (max-width:1000px) {
  .seller-guide-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .seller-guide-grid article { border-bottom:1px solid var(--line); }
  .seller-guide-grid article:nth-child(2n) { border-right:0; }
  .seller-guide-grid article:last-child { border-bottom:0; }
  .seller-standards { grid-template-columns:150px 1fr; }
}
@media (max-width:620px) {
  .auction-catalog-heading { grid-template-columns:1fr; gap:12px; }
  .auction-catalog-heading h2 { font-size:40px; }
  .auction-controls-panel { margin-bottom:32px; }
  .auction-controls-panel .auction-status-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .auction-controls-panel .auction-status-tabs button { min-height:58px; padding:13px 14px; border-bottom:1px solid #d7c7aa; font-size:17px; }
  .auction-controls-panel .auction-status-tabs button:nth-child(2n) { border-right:0; }
  .auction-controls-panel .auction-status-tabs button:nth-last-child(-n+2) { border-bottom:0; }
  .auction-controls-panel .filter-bar { grid-template-columns:1fr; gap:12px; padding:16px; }
  .auction-controls-panel .catalog-count { min-width:0; padding:11px 14px; text-align:left; }
  .auction-house-hero:has(> .auction-category-browser) { min-height:0; }
  .auction-house-hero > .auction-category-browser { padding:8px 4% 20px; }
  .auction-house-hero > .auction-category-browser .auction-category-card { min-height:78px; padding:11px 12px; }
  .auction-house-hero > .auction-category-browser .auction-category-card strong { font-size:17px; }
  .auction-house-hero > .auction-category-browser .auction-category-card em { font-size:8px; }
  .auction-rules,.auction-sell-guide { margin-top:50px; padding:46px 0; }
  .auction-rules li { grid-template-columns:40px 1fr; gap:14px; }
  .auction-rule-note { grid-template-columns:1fr; gap:10px; padding:22px; }
  .seller-guide-grid { grid-template-columns:1fr; }
  .seller-guide-grid article { border-right:0; }
  .seller-standards { grid-template-columns:1fr; gap:14px; padding:22px; }
  .seller-standards ul + h3 { margin-top:12px; }
}
.auction-result { background:#e9e0cb; padding:12px 15px; margin:18px 0; font-size:13px; }
.auction-seller-terms:not([hidden]) { padding:18px; border:1px solid var(--line); }
.auction-seller-terms .form-note { margin-bottom:16px; }
@media(max-width:600px) {
  .auction-intro,.auction-catalog .product-grid { grid-template-columns:1fr; gap:26px; }
  .auction-intro h2 { font-size:34px; }
  .auction-catalog .filter-bar { align-items:stretch; }
  .auction-category-heading { display:block; }
  .auction-category-heading .text-link { display:inline-block; margin-top:16px; }
  .auction-category-grid { grid-template-columns:1fr 1fr; }
  .auction-category-card { min-height:176px; padding:17px; }
  .auction-category-card strong { margin-top:20px; font-size:22px; }
  .auction-trust,.auction-steps { grid-template-columns:1fr; gap:32px; padding:56px 0; }
  .auction-trust-grid { grid-template-columns:1fr; gap:32px; }
  .auction-steps li { grid-template-columns:1fr; gap:8px; }
  .auction-seller-callout { display:block; padding:28px 22px; }
  .auction-seller-callout .button { width:100%; margin-top:24px; }
  .auction-bid-row { grid-template-columns:1fr; }
}

@media(min-width:601px) and (max-width:950px) {
  .auction-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .auction-trust,.auction-steps { grid-template-columns:1fr; gap:34px; }
}



/* A small side placard keeps the runner and shop entrance in view. */
.hero { flex-direction:column; justify-content:space-between; }
.hero-copy { padding-bottom:30px; }
.hero-auction {
  display:grid; grid-template-columns:40px minmax(0,1fr); gap:5px 10px;
  width:278px; max-width:88%; margin:0 0 32px max(5%,calc((100% - 1332px)/2)); padding:10px 12px;
  background:linear-gradient(90deg,rgba(12,16,12,.67),rgba(12,16,12,.33));
  border-left:1px solid #d1ae6d88; color:#fffaf0;
}
.hero-auction>img { grid-column:1; grid-row:1 / 5; width:40px; height:50px; object-fit:cover; margin-top:3px; }
.hero-auction-title { grid-column:2; }
.hero-auction .eyebrow { display:block; color:#e0bd79; font-size:8px; letter-spacing:.13em; margin:0 0 4px; }
.hero-auction h2 { font-size:17px; line-height:1.2; letter-spacing:-.015em; }
.hero-auction-note { display:block; color:#c9cbbf; font-size:9px; margin-top:5px; }
.hero-auction-price { grid-column:2; display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
.hero-auction-price>span,.hero-auction-price>small { color:#d9d7ca; font-size:10px; }
.hero-auction-price>strong { font:22px/1.2 var(--serif); }
.hero-auction-time { grid-column:2; }
.hero-auction-time>strong { color:#d9d7ca; font-size:10px; font-weight:400; }
.auction-feature-link { grid-column:2; justify-self:start; display:inline-block; padding:4px 0; border:0; border-bottom:1px solid #c4a56e; background:none; color:#f3e6c9; font-size:12px; line-height:1.4; }
.auction-feature-link:hover { color:#fff; border-color:#fff; }
.hero-auction-empty { grid-template-columns:1fr; }
@media(max-width:900px) { .hero-auction { margin-left:6%; } }
@media(max-width:600px) {
  .hero-copy { padding-bottom:30px; }
  .hero-auction { width:248px; }
  .hero-auction-price>strong { font-size:21px; }
}

/* Corner discoveries leave an open view down the middle of the shop. */
.hero-discoveries { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; flex-wrap:wrap; width:90%; max-width:1332px; margin:0 auto 32px; }
.hero-discoveries .hero-auction { margin:0; max-width:100%; }
.hero-discoveries .auction-feature-link { font-size:11px; }
.hero-makers { display:grid; grid-template-columns:minmax(0,1fr) 36px; align-items:center; gap:10px; width:218px; max-width:100%; margin-left:auto; padding:10px 12px; border-right:1px solid #d1ae6d88; background:linear-gradient(270deg,rgba(12,16,12,.67),rgba(12,16,12,.28)); color:#fffaf0; }
.hero-makers .eyebrow { display:block; margin:0 0 4px; font-size:8px; letter-spacing:.13em; color:#e0bd79; }
.hero-makers h2 { font-size:17px; line-height:1.2; letter-spacing:-.02em; }
.hero-makers p { font-size:11px; line-height:1.45; color:#d9d7ca; margin:4px 0; }
.hero-makers>img { width:36px; height:46px; object-fit:cover; }
@media (max-width:700px) {
  .home-hero { min-height: 0; }
  .home-hero::before {
    background: linear-gradient(90deg, #130a06db, #130a0654),
      linear-gradient(0deg, #130a06 8%, transparent 58%);
  }
  .home-hero > .hero-background { object-position: 66% center; }
  .home-hero .hero-copy { padding-block: 44px 28px; }
  .home-hero h1 { font-size: clamp(36px, 10vw, 58px); }
  .home-hero .button-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .home-hero .button-row .button { justify-content: center; min-height: 44px; text-align: center; }
  .home-hero .button-row .button:first-child { grid-column: 1 / -1; }
  .home-hero .hero-footnote { display: none; }

  .home-hero .hero-discoveries {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 8px;
    width: 88%;
    margin-bottom: 22px;
  }
  .home-hero .hero-discoveries > aside {
    display: grid;
    grid-template: auto auto 1fr auto / minmax(0, 1fr);
    align-items: start;
    width: 100%;
    margin: 0;
    gap: 6px;
    padding: 10px;
    border: 1px solid #d1ae6d55;
    background: #1f130de0;
  }
  .home-hero .hero-makers > div { display: contents; }
  .home-hero .hero-discoveries > aside > img {
    grid-area: 1 / 1;
    width: 32px;
    height: 36px;
    margin: 0;
  }
  .home-hero .hero-auction-title { grid-area: 2 / 1 / 4; }
  .home-hero .hero-makers .eyebrow { grid-area: 2 / 1; }
  .home-hero .hero-makers h2 { grid-area: 3 / 1; }
  .home-hero .hero-discoveries h2 { font-size: 16px; overflow-wrap: break-word; }
  .home-hero .hero-auction-note, .home-hero .hero-makers p { display: none; }
  .home-hero .hero-discoveries .auction-feature-link {
    display: flex;
    align-items: center;
    grid-area: 4 / 1;
    min-height: 44px;
    padding: 0;
    border: 0;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
}

/* A single brass-trimmed navigation row above the entrance. */
.site-header { min-height:80px; padding:14px 4%; gap:26px; background:linear-gradient(180deg,#302018,#1b100c); color:#f7f0df; border-top:2px solid #a8874d; border-bottom:1px solid #ab8c535c; box-shadow:0 4px 20px #0003; }
.site-header .wordmark { font-size:20px; gap:12px; letter-spacing:.045em; }
.site-header .wordmark small { color:#d6b879; font-size:8px; margin-bottom:5px; }
.site-header .wordmark img { width:38px; height:44px; }
.site-header nav { display:flex; align-items:center; gap:26px; }
.site-header nav a { display:block; padding:12px 0; font-family:var(--serif); font-size:16px; line-height:1.2; color:#f0eada; transition:color .18s ease; }
.site-header nav a:hover,.site-header nav a[aria-current=page] { color:#edca83; }
.site-header nav a[aria-current=page]:after { bottom:3px; background:#d9b971; }
.site-header nav a.nav-private { display:flex; align-items:center; gap:7px; font-family:var(--sans); font-size:12px; color:#d4cdb9; }
.nav-private svg { width:12px; height:15px; color:#ccae71; }
.site-header nav a.nav-booking { display:flex; align-items:center; gap:12px; padding:12px 15px; border:1px solid #c3a268; font-family:var(--sans); font-size:11px; font-weight:600; letter-spacing:.02em; color:#f0dcaf; }
.site-header nav a.nav-booking:hover { background:#c3a268; color:#102019; }
.site-header nav a.nav-booking:after { display:none; }
.site-header .header-actions { padding-left:15px; border-left:1px solid #b69a653d; gap:7px; }
.site-header .icon-button { width:34px; height:40px; color:#e6d6ad; }
.site-header .icon-button:hover { background:#ffffff0b; }
.site-header .account-toggle { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }

/* Customer and administrator dashboards */
.account-welcome { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:42px; align-items:center; }
.account-welcome h2 { margin:12px 0 18px; font-size:clamp(2.3rem,5vw,4.7rem); }
.account-welcome p { max-width:700px; color:#695c4f; }
.account-welcome-list { display:grid; gap:1px; background:#cbbd9f; border:1px solid #cbbd9f; }
.account-welcome-list span { padding:22px 24px; background:#f7f0e4; font-family:var(--serif); font-size:1.12rem; }
.dashboard-shell { display:grid; gap:34px; }
.dashboard-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); gap:1px; border:1px solid #cfbea0; background:#cfbea0; }
.dashboard-stat { min-width:0; min-height:145px; padding:22px; display:flex; flex-direction:column; justify-content:flex-end; background:#f8f2e7; }
.dashboard-stat strong { font-family:var(--serif); font-weight:500; font-size:clamp(2rem,4vw,3.45rem); line-height:1; color:#2b180f; overflow-wrap:anywhere; }
.dashboard-stat span { margin-top:10px; color:#73592f; text-transform:uppercase; letter-spacing:.13em; font-size:.72rem; font-weight:700; }
.dashboard-stat small { margin-top:5px; color:#766b5f; }
.dashboard-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.dashboard-action { min-height:220px; padding:25px; display:flex; flex-direction:column; border:1px solid #cdbb9c; background:linear-gradient(145deg,#fffaf1,#efe3d0); color:#2b180f; text-decoration:none; transition:transform .2s,border-color .2s,box-shadow .2s; }
.dashboard-action:hover { transform:translateY(-3px); border-color:#9f7531; box-shadow:0 18px 35px #3b251218; }
.dashboard-action span { color:#976d2a; text-transform:uppercase; letter-spacing:.14em; font-size:.68rem; font-weight:700; }
.dashboard-action strong { margin:16px 0 8px; font-family:var(--serif); font-size:1.65rem; font-weight:500; }
.dashboard-action p { margin:0; color:#695c4f; line-height:1.6; }
.dashboard-action em { margin-top:auto; padding-top:20px; color:#76521b; font-style:normal; font-weight:700; }
.dashboard-columns { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(300px,.75fr); gap:18px; align-items:start; }
.dashboard-stack { display:grid; gap:18px; }
.dashboard-panel { border:1px solid #cdbb9c; background:#fffaf2; padding:25px; }
.dashboard-panel h2 { margin:0 0 20px; font-size:clamp(1.7rem,3vw,2.55rem); }
.dashboard-panel-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:8px; }
.dashboard-panel-heading h2 { margin:8px 0 0; }
.dashboard-record { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:18px 0; border-top:1px solid #d9cdb8; }
.dashboard-record:first-of-type { border-top:0; }
.dashboard-record span { color:#8a6327; font-size:.68rem; text-transform:uppercase; letter-spacing:.12em; font-weight:700; }
.dashboard-record h3 { margin:5px 0; font-family:var(--serif); font-size:1.25rem; }
.dashboard-record p { margin:0; color:#736658; }
.dashboard-record > div:last-child { display:grid; justify-items:end; gap:7px; text-align:right; }
.dashboard-record > strong { color:#2d724c; text-transform:capitalize; }
.dashboard-empty { padding:28px 0 12px; border-top:1px solid #d9cdb8; }
.dashboard-empty h3 { font-family:var(--serif); font-size:1.7rem; margin:0 0 8px; }
.dashboard-muted { color:#766b5f; }
.dashboard-inbox { display:grid; gap:10px; }
.dashboard-inbox span { display:flex; justify-content:space-between; gap:15px; padding:13px 0; border-top:1px solid #d9cdb8; }
.dashboard-inbox strong { font-family:var(--serif); font-size:1.45rem; }
.admin-dashboard .dashboard-stat { background:#f4ead9; }
.admin-actions .dashboard-action { min-height:190px; }
.owner-switch { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 18px; border:1px solid #bda77e; background:#2a180f; color:#f3e3bf; }
.owner-switch span { font-size:.76rem; letter-spacing:.08em; }

@media (max-width:900px) {
  .account-welcome,.dashboard-columns { grid-template-columns:1fr; }
  .dashboard-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:560px) {
  .owner-switch { align-items:flex-start; flex-direction:column; }
  .dashboard-actions { grid-template-columns:1fr; }
  .dashboard-action { min-height:180px; }
  .dashboard-stat { min-height:112px; padding:17px; }
  .dashboard-panel { padding:19px; }
  .dashboard-panel-heading,.dashboard-record { align-items:flex-start; flex-direction:column; }
  .dashboard-record > div:last-child { justify-items:start; text-align:left; }
}
.site-header .cart-count { background:#cfad6c; color:#142018; font-weight:700; }
.site-header .menu-toggle { display:none; }
@media(min-width:901px) and (max-width:1250px) {
  .site-header { min-height:74px; padding:12px 2.5%; gap:14px; }
  .site-header .wordmark { font-size:16px; gap:8px; letter-spacing:.025em; }
  .site-header .wordmark img { width:30px; height:38px; }
  .site-header nav { gap:13px; }
  .site-header nav a { font-size:13px; }
  .site-header nav a.nav-private { font-size:10px; gap:5px; }
  .site-header nav a.nav-booking { font-size:10px; padding:11px 12px; gap:8px; }
  .site-header .header-actions { padding-left:10px; gap:3px; }
  .site-header .icon-button { width:29px; }
}
@media(max-width:900px) {
  .site-header { min-height:70px; padding:11px 4%; gap:12px; }
  .site-header .header-actions .menu-toggle { display:inline-flex; align-items:center; justify-content:center; gap:5px; width:62px; }
  .menu-label { font:10px/1 var(--sans); }
  .site-header nav { display:none; position:absolute; top:100%; left:0; right:0; background:#24150f; padding:15px 6% 22px; box-shadow:0 14px 24px #0004; border-bottom:1px solid #c3a26877; flex-direction:column; align-items:stretch; gap:0; }
  .site-header nav.open { display:flex; }
  .site-header nav a { padding:15px 0; border-bottom:1px solid #c3a26833; font-size:21px; }
  .site-header nav a[aria-current=page]:after { display:none; }
  .site-header nav a.nav-private { font-size:14px; padding:18px 0; }
  .site-header nav a.nav-booking { justify-content:space-between; margin-top:16px; padding:15px 18px; font-size:13px; }
}
@media(max-width:600px) {
  .site-header { gap:8px; }
  .site-header .wordmark { font-size:13px; gap:8px; letter-spacing:.025em; }
  .site-header .wordmark img { width:29px; height:36px; }
  .site-header .wordmark small { font-size:7px; margin-bottom:4px; }
  .site-header .header-actions { padding-left:7px; gap:1px; }
  .site-header .icon-button { width:30px; height:38px; padding:4px; }
  .site-header .icon-button svg { width:21px; height:21px; }
}

/* Homepage chapters mirror the five main navigation destinations. */
.home-house .section-heading p { margin-top:14px; }
.house-showcase { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:48px; align-items:stretch; }
.house-still-life { position:relative; margin:0; min-height:470px; overflow:hidden; background:#302018; }
.house-still-life>img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
:is(.house-still-life,.auction-display,.makers-workbench)::after {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  border:1px solid #bb9556;
  box-shadow:inset 0 0 0 5px #302018,inset 0 0 0 6px #bb9556;
}
.house-selections { display:flex; flex-direction:column; }
.house-selection { flex:1; display:grid; grid-template-columns:30px minmax(0,1fr); gap:18px; border-top:1px solid #ad945e77; padding:24px 0; }
.house-selection:last-child { border-bottom:1px solid #ad945e77; }
.house-selection-number { color:#9a7540; font:italic 18px/1.4 var(--serif); }
.house-selection .eyebrow { font-size:9px; letter-spacing:.16em; margin-bottom:9px; }
.house-selection h3 { font-size:clamp(22px,2.1vw,30px); line-height:1.12; }
.house-selection p { font-size:12px; margin:10px 0 12px; }
@media(max-width:900px) {
  .house-showcase { gap:28px; }
  .house-still-life { min-height:450px; }
  .house-selection { gap:10px; grid-template-columns:24px minmax(0,1fr); padding:20px 0; }
}
@media(max-width:600px) {
  .house-showcase { grid-template-columns:1fr; gap:28px; }
  .house-still-life { min-height:0; aspect-ratio:1.2; }
  .house-selection h3 { font-size:25px; }
}
.home-destination .section-heading { margin-bottom:28px; }
.home-destination { border-top:1px solid #b18a4b55; }
.home-auctions { background:radial-gradient(ellipse at 100% 0%,#8b58262b,transparent 65%),linear-gradient(115deg,#21130e,#3b2419 70%,#29170f); }
.auction-showcase { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); align-items:center; gap:64px; }
.auction-showcase-copy>h2 { margin-top:22px; font-size:clamp(36px,4.2vw,60px); line-height:1.07; }
.auction-showcase-copy>h2 em { color:#dfbc7c; font-weight:400; }
.auction-showcase-intro { font-size:14px; max-width:430px; margin-top:22px; line-height:1.75; }
.auction-selections { margin:30px 0; border-top:1px solid #ba97534d; }
.auction-selection { padding:18px 0; border-bottom:1px solid #ba97534d; }
.auction-lot-number { display:block; font-size:9px; letter-spacing:.18em; color:#c3a268; margin-bottom:7px; }
.auction-lot-title { color:#f5ead5; font-size:22px; line-height:1.2; }
.auction-showcase-action { display:flex; flex-wrap:wrap; gap:16px 22px; align-items:center; }
.auction-showcase-action .button { background:#dfbd7b; border-color:#dfbd7b; color:#25150e; font-size:12px; padding:15px 22px; }
.auction-showcase-action .button:hover { background:#f0d5a1; }
.auction-showcase-action>span { font-size:10px; color:#d0bda5; }
.auction-display { position:relative; align-self:stretch; min-height:570px; margin:0; overflow:hidden; background:#302018; border:1px solid #b48d4c55; }
.auction-display>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.auction-display figcaption { position:absolute; left:22px; right:22px; bottom:18px; display:flex; justify-content:space-between; gap:15px; align-items:center; padding:12px 15px; background:#21120dcc; color:#f4dfba; border-top:1px solid #b48d4c77; }
.auction-display figcaption>span:first-child { font-size:8px; letter-spacing:.18em; }
.auction-display figcaption>span:last-child { font:italic 17px var(--serif); }
@media(max-width:1100px) {
  .auction-showcase { gap:36px; }
  .auction-display { min-height:540px; }
}
@media(max-width:700px) {
  .auction-showcase { grid-template-columns:1fr; gap:30px; }
  .auction-display { min-height:0; aspect-ratio:1.2; grid-row:2; }
  .auction-showcase-copy>h2 { font-size:42px; }
  .auction-showcase-intro { margin-top:18px; }
  .auction-display figcaption { left:12px; right:12px; bottom:12px; }
  .auction-display figcaption>span:last-child { font-size:15px; }
}
.home-performers { background:#1a1010; padding:0; color:#f4ead6; }
.home-performers>.section-wrap { max-width:none; width:100%; padding:0; }
.headline-performance { position:relative; isolation:isolate; min-height:650px; padding:70px max(4%,calc((100% - var(--max))/2)) 115px; background:#1a1010; overflow:hidden; }
.headline-performance-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-2; }
.headline-performance:before { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#170c0bed,#170c0bc9 42%,#170c0b15 80%),linear-gradient(0deg,#160c0ee6,transparent 48%); }
.headline-performance-copy { max-width:540px; }
.headline-performance-copy .eyebrow { color:#dfbd7b; font-size:10px; }
.headline-performance-copy h2 { font-size:clamp(56px,7vw,96px); line-height:.99; margin:28px 0 24px; letter-spacing:-.045em; }
.headline-performance-copy h2 em { color:#e4c48a; font-weight:400; }
.headline-performance-copy>p { max-width:390px; color:#e1d2bc; font-size:14px; line-height:1.8; }
.headline-booking-link { display:inline-flex; gap:40px; align-items:center; margin:28px 0 16px; padding:15px 22px; background:#e1bf7e; color:#29170f; font-size:12px; font-weight:600; }
.headline-booking-link:hover { background:#f1d7a6; }
.headline-performance-note { display:block; font-size:10px; color:#cfbda2; }
.headline-performance-formats { position:absolute; left:max(4%,calc((100% - var(--max))/2)); right:max(4%,calc((100% - var(--max))/2)); bottom:28px; padding-top:22px; border-top:1px solid #c7a36b66; display:flex; gap:28px; justify-content:space-between; color:#e4cfaa; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.performance-footer-transition { display:flex; justify-content:center; align-items:center; gap:25px; padding:26px 6% 54px; background:var(--paper); }
.performance-footer-transition>span { width:110px; height:1px; background:#ae8b4d66; }
.performance-footer-transition>img { opacity:.8; }
.booking-overview { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; margin-bottom:45px; }
.booking-overview>p { font-size:15px; }
.booking-event-form { max-width:900px; margin:50px auto 0; }
.performer-apply-link { display:flex; align-items:center; justify-content:space-between; gap:42px; max-width:900px; margin:44px auto 0; padding:34px; border:1px solid var(--line); background:#f4ead9; }
.performer-apply-link h2 { margin:10px 0; font-size:30px; }
.performer-apply-link p { max-width:540px; color:var(--muted); }
.performer-apply-link .button { flex:0 0 auto; }
@media(max-width:700px) {
  .home-performers { padding:0; }
  .headline-performance { padding:40px 25px 120px; min-height:650px; }
  .headline-performance-copy h2 { font-size:62px; }
  .headline-performance-copy>p { font-size:13px; max-width:330px; }
  .headline-performance-image { object-position:82% center; }
  .headline-performance:before { background:linear-gradient(90deg,#170c0be6,#170c0bb3 55%,#170c0b66),linear-gradient(0deg,#160c0ef2,transparent 65%); }
  .headline-performance-formats { left:25px; right:25px; bottom:25px; flex-wrap:wrap; justify-content:flex-start; gap:12px 22px; font-size:9px; }
  .performance-footer-transition { padding-bottom:40px; }
  .booking-overview { grid-template-columns:1fr; gap:25px; }
  .performer-apply-link { display:block; padding:26px 20px; }
  .performer-apply-link .button { width:100%; margin-top:22px; }
}
.makers-showcase { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:64px; align-items:center; }
.makers-workbench { margin:0; position:relative; min-height:540px; align-self:stretch; overflow:hidden; background:#302018; }
.makers-workbench img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.makers-showcase-copy>h2 { margin:22px 0; font-size:clamp(36px,4vw,57px); line-height:1.08; }
.makers-showcase-copy>h2 em { color:#95642f; font-weight:400; }
.makers-showcase-copy>p { max-width:430px; font-size:14px; line-height:1.75; }
.makers-enter { display:inline-flex; align-items:center; gap:25px; margin:24px 0 28px; padding:0 0 10px; border-bottom:1px solid #95642f; font-size:12px; color:#58391e; }
.makers-enter>span { font-size:19px; }
.makers-enter:hover { color:#9c6e36; }
.makers-creation-list { border-top:1px solid var(--line); }
.makers-creation-list>div { display:flex; align-items:center; justify-content:space-between; gap:18px; background:none; border:0; border-bottom:1px solid var(--line); padding:17px 0; width:100%; text-align:left; font:21px/1.25 var(--serif); }
@media(max-width:1100px) {
  .makers-showcase { gap:36px; }
  .makers-workbench { min-height:510px; }
}
@media(max-width:700px) {
  .makers-showcase { grid-template-columns:1fr; gap:28px; }
  .makers-showcase-copy { grid-row:1; }
  .makers-workbench { min-height:0; aspect-ratio:1.2; }
  .makers-showcase-copy>h2 { font-size:40px; }
}
.home-destination .section-heading p { max-width:610px; margin-top:20px; font-size:15px; }
.home-preview-note { font-size:10px; color:var(--muted); margin:0 0 22px; letter-spacing:.025em; }
.home-product-samples .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.home-auction-samples .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
.home-auctions .eyebrow,.home-performers .eyebrow { color:#d5b779; }
.home-auctions .text-link,.home-performers .text-link { color:#f0dfb8; border-color:#a58c57; }
.home-auctions .product-meta,.home-auctions .sample-label,.home-auctions .auction-price span,.home-auctions .home-preview-note,.home-performers .home-preview-note { color:#d5c4ae; }
.home-auctions .auction-countdown { color:#f2dfb5; }
.home-auctions .product-badge,.home-auctions .product-hover { color:#1c2a22; }
.home-auctions .button.secondary { border-color:#a58c57; color:#f8efdd; }
.home-auctions .button.secondary:hover { background:#a58c57; color:#142119; }
.home-auction-samples .product-picture { aspect-ratio:1.6; }
.home-maker-links { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:32px; padding-top:26px; border-top:1px solid var(--line); }
.home-maker-links>span { font-size:11px; color:var(--muted); margin-right:8px; }
.home-private { background:linear-gradient(90deg,#160c08d9 0%,#160c08a6 48%,#160c0838 100%),linear-gradient(180deg,transparent 22%,#160c08c9 100%),url("private-collection-door-centered.webp") center center / cover no-repeat #21130f; color:#f5ebd8; border-top:1px solid #b38a4c66; }
.professional-home-intro { display:flex; justify-content:space-between; align-items:flex-end; gap:40px; margin-bottom:32px; }
.professional-home .eyebrow { color:#d7b478; }
.professional-home-intro h2 { font-size:clamp(34px,3.6vw,52px); margin:22px 0 18px; line-height:1.12; }
.professional-home-intro h2 em { color:#dfbc7c; font-weight:400; }
.professional-home-intro p { max-width:650px; font-size:14px; color:#d5c4ae; line-height:1.8; margin:0; }
.professional-home-enter { display:inline-flex; align-items:center; gap:25px; min-height:46px; margin:0 0 4px; padding:14px 22px; background:#e1bf7e; color:#29170f; font-size:12px; font-weight:600; flex-shrink:0; }
.professional-home-enter:hover { background:#f1d7a6; }
.professional-home-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.professional-home-cards article { padding:24px 20px; border:1px solid #c7a36b44; border-top:2px solid #b38a4c; background:#ffffff03; }
.professional-home-cards h3 { font:23px/1.2 var(--serif); margin:0 0 14px; color:#f5ebd8; }
.professional-home-cards p { color:#cbb9a2; font-size:12px; line-height:1.75; margin:0; }
.professional-home-review { font-size:10px; color:#bfa98f; margin:20px 0 0; }
.professional-path-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.professional-overview { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; margin-bottom:38px; }
.professional-overview>p { max-width:450px; }
.professional-path { display:flex; flex-direction:column; padding:30px; border:1px solid var(--line); background:#fffaf24d; }
.professional-path .eyebrow { font-size:9px; }
.professional-path h3 { margin:12px 0 16px; }
.professional-path>p { font-size:14px; margin-bottom:22px; }
.professional-path>a { margin-top:auto; color:#785324; border-bottom:1px solid #b08b4a; align-self:flex-start; padding-bottom:5px; font-size:12px; }
.professional-form-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:60px; align-items:start; }
.professional-form-layout aside>h2 { margin:28px 0; font-size:34px; }
.professional-review-steps { list-style:none; padding:0; margin:0; counter-reset:professional-step; }
.professional-review-steps li { counter-increment:professional-step; border-top:1px solid var(--line); padding:20px 0; }
.professional-review-steps strong { display:block; font:21px var(--serif); margin-bottom:10px; }
.professional-review-steps strong:before { content:'0' counter(professional-step) ' / '; color:#97723d; font-size:15px; }
.professional-review-steps span { font-size:13px; color:var(--muted); }
.professional-local-note { padding:12px 15px; margin:20px 0; border-left:2px solid var(--brass); background:#dfbd7b1a; font-size:12px; }
.professional-ack { display:flex; align-items:flex-start; gap:12px; font-size:12px; line-height:1.6; }
.professional-ack>input { width:17px; height:17px; flex-shrink:0; margin-top:3px; }
.professional-review-panel { max-width:var(--max); margin:0 auto 60px; }
.professional-review-record { border-top:1px solid var(--line); padding:20px 0; }
.professional-review-record summary { cursor:pointer; font-weight:600; }
.professional-review-record dd { margin:0 0 12px; overflow-wrap:anywhere; white-space:pre-wrap; }
.professional-review-record dt { font-weight:600; }
@media(max-width:1000px) {
  .professional-home-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .professional-form-layout { grid-template-columns:1fr; gap:32px; }
  .professional-review-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
}
@media(max-width:850px) {
  .professional-path-grid { grid-template-columns:1fr; }
}
@media(max-width:700px) {
  .professional-overview { grid-template-columns:1fr; gap:30px; }
  .professional-home-intro { display:block; }
  .professional-home-intro h2 { font-size:36px; }
  .professional-home-enter { margin-top:24px; }
  .professional-overview>h2 { font-size:34px; }
  .professional-review-steps { display:block; }
  .professional-home-cards { grid-template-columns:1fr; gap:12px; }
  .professional-home-cards article { padding:22px; }
}
.home-preview-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.home-preview-card { border-top:1px solid #ad945e77; padding:26px 0 12px; }
.home-preview-card h3 { font-size:28px; margin-bottom:15px; }
.home-preview-card p { max-width:330px; font-size:14px; }
.preview-number { display:block; color:#94713a; font-family:var(--serif); font-size:33px; margin-bottom:20px; }
.home-note-after { margin:26px 0 0; }
@media(max-width:900px) {
  .home-destination .section-heading { align-items:flex-start; flex-direction:column; gap:24px; }
  .home-product-samples .product-grid { gap:20px; }
  .home-preview-grid { gap:20px; }
  .home-preview-card h3 { font-size:24px; }
}
@media(max-width:600px) {
  .home-product-samples .product-grid,.home-auction-samples .product-grid,.home-preview-grid { grid-template-columns:1fr; gap:28px; }
  .home-destination .section-heading p { font-size:14px; }
  .home-product-samples .product-picture { aspect-ratio:1.2; }
  .home-preview-card { padding-top:22px; }
  .preview-number { margin-bottom:12px; }
}

/* Selective performer roster application, separate from organizer booking. */
.performer-application-hero { position:relative; min-height:680px; display:flex; align-items:center; overflow:hidden; color:#fff8eb; background:#160b0b; }
.performer-application-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.performer-application-hero:before { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,#160b0bf2 0%,#160b0bd2 40%,#160b0b3a 72%),linear-gradient(0deg,#160b0bcb,transparent 55%); }
.performer-application-hero>div { position:relative; z-index:2; width:min(720px,88%); margin-left:max(6%,calc((100% - var(--max))/2)); padding:90px 0; }
.performer-application-hero .breadcrumb { color:#d3c0a5; }
.performer-application-hero .breadcrumb a { color:#fff8eb; }
.performer-application-hero .eyebrow { color:#dfbd7b; }
.performer-application-hero h1 { margin:22px 0; font-size:clamp(58px,6.8vw,98px); line-height:.96; letter-spacing:-.045em; }
.performer-application-hero h1 em { color:#e0bd79; font-weight:400; }
.performer-application-hero p { max-width:570px; margin-bottom:30px; color:#eadcc7; font-size:15px; line-height:1.75; }
.performer-application-hero .button { background:#e0bd79; border-color:#e0bd79; color:#29170f; }
.performer-standard { padding-top:80px; padding-bottom:80px; }
.performer-standard-intro { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:end; margin-bottom:52px; }
.performer-standard-intro h2,.performer-screening-heading h2,.performer-form-intro h2 { margin:14px 0; font-size:clamp(40px,5vw,68px); line-height:1.02; }
.performer-standard-intro p { margin-bottom:20px; color:var(--muted); line-height:1.7; }
.performer-requirement-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.performer-requirement-grid article { min-height:245px; padding:28px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:#fff9ee; }
.performer-requirement-grid article>span { color:#9c6a32; font:italic 18px/1 var(--serif); }
.performer-requirement-grid h3 { margin:38px 0 12px; font-size:24px; }
.performer-requirement-grid p { color:var(--muted); font-size:12px; line-height:1.65; }
.performer-screening { padding:86px 0; background:#241110; color:#fff8eb; }
.performer-screening>.section-wrap { display:grid; grid-template-columns:.8fr 1.4fr; gap:80px; }
.performer-screening-heading .eyebrow { color:#dfbd7b; }
.performer-screening-heading p { max-width:400px; color:#d8c7b0; line-height:1.7; }
.performer-screening ol { margin:0; padding:0; list-style:none; border-top:1px solid #c5a46b55; }
.performer-screening li { display:grid; grid-template-columns:45px 1fr; gap:20px; padding:20px 0; border-bottom:1px solid #c5a46b55; }
.performer-screening li>span { color:#dfbd7b; font:italic 17px/1 var(--serif); }
.performer-screening li strong { font:24px/1.1 var(--serif); }
.performer-screening li p { margin-top:8px; color:#d8c7b0; font-size:12px; line-height:1.6; }
.performer-application-form { display:grid; grid-template-columns:.75fr 1.25fr; gap:70px; align-items:start; padding-top:90px; padding-bottom:90px; }
.performer-form-intro>p { max-width:440px; color:var(--muted); line-height:1.7; }
.performer-positioning { margin-top:32px; padding:24px 0; border-block:1px solid var(--line); }
.performer-positioning strong { display:block; font:23px/1.2 var(--serif); }
.performer-positioning span { display:block; margin-top:10px; color:#8d6234; font-size:11px; line-height:1.6; }
@media(max-width:950px) {
  .performer-standard-intro,.performer-screening>.section-wrap,.performer-application-form { grid-template-columns:1fr; gap:38px; }
  .performer-requirement-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  .performer-application-hero { min-height:690px; align-items:flex-end; }
  .performer-application-hero>img { object-position:76% center; }
  .performer-application-hero:before { background:linear-gradient(0deg,#160b0bf7 0%,#160b0bdb 55%,#160b0b45 88%); }
  .performer-application-hero>div { width:88%; margin:0 auto; padding:210px 0 66px; }
  .performer-application-hero h1 { font-size:clamp(48px,13vw,62px); }
  .performer-standard { padding-top:56px; padding-bottom:56px; }
  .performer-requirement-grid { grid-template-columns:1fr; }
  .performer-requirement-grid article { min-height:210px; }
  .performer-screening { padding:60px 0; }
  .performer-application-form { padding-top:60px; padding-bottom:60px; }
}

/* Match the homepage's copy spacing across page leads. */
:root {
  --hero-copy-top:60px;
  --hero-copy-gutter:5%;
  --hero-eyebrow-gap:20px;
  --hero-action-gap:24px;
}
:is(.auction-house-hero,.makers-workshop-hero,.performer-application-hero) {
  align-items:flex-start;
}
:is(.hero-copy,.auction-house-hero-copy,.makers-workshop-hero-copy,.performer-application-hero>div,.page-heading) {
  position:relative;
  width:100%;
  max-width:1480px;
  margin-inline:auto;
  padding-block-start:var(--hero-copy-top);
  padding-inline:var(--hero-copy-gutter);
}
:is(.auction-house-hero-copy,.makers-workshop-hero-copy,.performer-application-hero>div,.page-heading)>.breadcrumb {
  position:absolute;
  top:calc(var(--hero-copy-top) - 36px);
  margin:0;
}
:is(.hero-copy,.auction-house-hero-copy,.makers-workshop-hero-copy,.performer-application-hero>div,.page-heading)>.eyebrow {
  margin:0 0 var(--hero-eyebrow-gap);
}
:is(.hero-copy,.auction-house-hero-copy,.makers-workshop-hero-copy,.performer-application-hero>div,.page-heading)>h1 {
  margin:0;
}
:is(.hero-copy,.auction-house-hero-copy,.makers-workshop-hero-copy,.performer-application-hero>div,.page-heading)>p {
  margin:14px 0 var(--hero-action-gap);
}
.page-heading>p:last-child { margin-bottom:0; }
@media(max-width:900px) {
  :root { --hero-copy-top:55px; --hero-copy-gutter:6%; }
}
@media(max-width:760px) {
  :is(.auction-house-hero,.makers-workshop-hero,.performer-application-hero)::before {
    background:linear-gradient(90deg,#100805e8,#1008059e),linear-gradient(0deg,#100805d9,transparent 70%);
  }
}
@media(max-width:600px) {
  :root { --hero-copy-top:90px; --hero-eyebrow-gap:22px; --hero-action-gap:22px; }
}

/* Brass ornaments in the open space beside the homepage headings. */
@media (min-width: 900px) {
  .home-house .section-heading,
  .makers-showcase-copy {
    position: relative;
  }
  .home-house .section-heading::after,
  .makers-showcase-copy::after {
    content: "";
    position: absolute;
    pointer-events: none;
    background: center / contain no-repeat;
    opacity: .28;
  }
  .home-house .section-heading::after {
    top: 42%;
    right: 14%;
    width: clamp(150px, 19vw, 270px);
    transform: translateY(-50%);
    opacity: .46;
    aspect-ratio: 2;
    background-image: url("ornament-wand.svg");
  }
  .makers-showcase-copy::after {
    top: -10px;
    right: 0;
    width: clamp(56px, 6vw, 86px);
    aspect-ratio: 1;
    background-image: url("ornament-stars.svg");
  }
}

@media (min-width: 1100px) {
  .auction-showcase-copy {
    position: relative;
  }
  .auction-showcase-copy::after {
    content: "";
    position: absolute;
    top: -11px;
    right: 8px;
    width: 106px;
    aspect-ratio: 3;
    background: url("ornament-auction-key.svg") center / contain no-repeat;
    opacity: .4;
    pointer-events: none;
  }
}

.shop-category-button { display:flex; align-items:center; }
.shop-category-button[aria-current="page"] { background:#341c13; color:#fffaf0; }
.shop-category-hero .hero-background { object-position: right center; }
@media (max-width:760px) {
  .shop-category-hero .hero-background { opacity:.48; }
}

.shop-counter-hero:has(> .shop-category-browser) {
  min-height: max(810px, 67vw);
}
.shop-counter-hero:has(> .shop-category-browser) > .hero-background {
  object-position: center bottom;
}
.shop-counter-hero > .shop-category-browser {
  width: 100%;
  max-width: none;
  margin-block: auto 0;
  padding: 12px 4% 12px;
}
.shop-counter-hero > .shop-category-browser h2 { color: #f5e7cc; }
.shop-counter-hero > .shop-category-browser .shop-category-button {
  background: #180d0955;
  border-color: #d0a969a6;
  color: #fff5e4;
}
.shop-counter-hero > .shop-category-browser .shop-category-button:hover,
.shop-counter-hero > .shop-category-browser .shop-category-button[aria-pressed="true"],
.shop-counter-hero > .shop-category-browser .shop-category-button[aria-current="page"] { background: #553822aa; }
.shop-counter-hero > .shop-category-browser .shop-category-button:focus-visible { outline-color: #f2d49c; }
@media (max-width: 760px) {
  .shop-counter-hero:has(> .shop-category-browser) { min-height: 770px; }
  .shop-counter-hero:has(> .shop-category-browser) > .hero-background { object-position: 65% bottom; }
}
.counter-search {
  display: flex;
  align-items: center;
  flex-direction: column;
  align-items: stretch;
  gap: 22px;
  padding-block: clamp(36px, 5vw, 72px);
}
.counter-search h2 { margin: 10px 0; font-size: clamp(30px, 4vw, 52px); }
.counter-search p { margin: 0; }
.counter-search .button { background: #341c13; color: #fff5e4; border-color: #a87c47; }
.counter-search .button:hover { background: #553822; }

.counter-search-form { width: 100%; }
.counter-search-form label { display: block; margin-bottom: 8px; font-weight: 600; }
.counter-search-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  border: 1px solid #a87c47;
  background: #fffaf1;
}
.counter-search-field:focus-within { outline: 2px solid #80501d; outline-offset: 3px; }
.counter-search-field input {
  width: 100%;
  min-height: 54px;
  border: 0;
  background: transparent;
  padding: 12px clamp(10px, 2vw, 22px);
  color: #341c13;
  font: inherit;
}
.counter-search-field .button { border: 0; padding-inline: clamp(12px, 3vw, 34px); }
@media (min-width: 900px) {
  .counter-search-copy {
    width: 100%;
    padding-inline-end: 140px;
    background: url("ornament-counter-search.svg") right 3% center / clamp(110px, 13vw, 190px) auto no-repeat;
    background-blend-mode: multiply;
  }
}

.booking-stage-hero h1 { font-size:clamp(46px, 6.4vw, 100px); }
.booking-stage-hero .hero-background { object-position:72% center; }
.booking-stage-hero #booking-title { overflow-wrap:break-word; }

@media (max-width:600px) {
  .booking-stage-hero { min-height:580px; }
  .booking-stage-hero h1 { font-size:clamp(34px, 9vw, 54px); }
  .booking-stage-hero::before {
    background:linear-gradient(180deg, rgba(12,7,4,.86), rgba(12,7,4,.74) 54%, rgba(12,7,4,.18));
  }
}

.private-collection-hero .hero-background { object-position: 72% center; }
.private-collection-hero .hero-copy .button { margin-top:24px; }
.private-shop-hero .hero-background { object-position:center; }
#private-catalog { scroll-margin-top: 96px; }
.private-pro-catalog { padding-top:72px; }
.private-pro-catalog .section-heading { align-items:end; }
.private-pro-catalog .product-grid { margin-top:34px; }
.private-access-seal,.private-request-state { display:inline-flex; align-items:center; min-height:42px; padding:10px 16px; border:1px solid #a9854f; color:#795628; font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.private-request-state { margin-top:24px; border-color:#d8b976; background:#21120da8; color:#edd7aa; }
@media (max-width: 600px) {
  .private-collection-hero::before {
    background: linear-gradient(180deg, rgba(12,7,4,.88), rgba(12,7,4,.76) 55%, rgba(12,7,4,.18));
  }
  .private-shop-hero .hero-background { object-position:72% center; opacity:.76; }
  .private-shop-hero::before { background:linear-gradient(90deg,rgba(12,7,4,.9),rgba(12,7,4,.64) 68%,rgba(12,7,4,.28)); }
}

/* Keep the main actions within easy reach on smaller screens. */
.lounge-hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height: 430px;
  display: grid;
  align-items: end;
  padding: clamp(70px, 10vw, 150px) 5% clamp(48px, 7vw, 90px);
  color: #fff5e4;
  background:#1c0e09;
}
.lounge-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(13,6,4,.94) 0%,rgba(20,9,6,.78) 44%,rgba(20,9,6,.2) 78%),linear-gradient(0deg,rgba(12,6,4,.62),transparent 55%); }
.lounge-hero-background { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; object-position:center; }
@media (max-width:760px) { .lounge-lecture-hero .lounge-hero-background { object-position:74% center; } }
.lounge-hero-copy { max-width: 850px; }
.lounge-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.lounge-hero-actions .button.secondary { background:transparent; color:#fff5e4; border-color:#c99d5e; }
.lounge-hero-actions .button.secondary:hover { background:#52331e; }
#lounge-programming, #lounge-discussions, #lounge-rooms, #lounge-moderation { scroll-margin-top: 100px; }
.lounge-programming-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(16px,3vw,32px); }
.section-wrap.lounge-programming, .section-wrap.lounge-screening { padding-top:clamp(28px,4vw,52px); }
.lounge-bulletin, .lounge-media-card { padding:clamp(22px,3.5vw,42px); border:1px solid #ddcbae; background:#fffaf1; }
.lounge-bulletin h3, .lounge-media-card h3 { margin:8px 0; font-size:clamp(24px,3vw,36px); }
.lounge-bulletin article { padding-top:16px; margin-top:18px; border-top:1px solid #e6d8c1; }
.lounge-bulletin article h4 { margin:0; font-size:1.2rem; }
.lounge-bulletin article p, .lounge-media-card p { margin:8px 0; }
@media (max-width:700px) {
  .lounge-programming-grid { grid-template-columns:1fr; }
}
.lounge-discussions-heading { grid-column:1 / -1; }
.lounge-discussions-heading h2 { margin:8px 0 0; }
.lounge-hero h1 { margin: 14px 0 20px; max-width: 760px; font-size: clamp(46px,7vw,96px); line-height:.98; }
.lounge-hero p { max-width: 690px; color:#e4d2b5; font-size:clamp(17px,2vw,22px); }
.lounge-layout { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr); gap:clamp(26px,5vw,70px); align-items:start; }
.lounge-feed,.lounge-sidebar { display:grid; gap:26px; }
.lounge-sidebar { gap:12px; }
.lounge-post,.lounge-disclosure,.lounge-signin,.lounge-moderation { border:1px solid #ddcbae; background:#fffaf1; padding:clamp(24px,4vw,46px); }
.lounge-post { box-shadow:0 18px 55px rgba(51,28,18,.07); }
.lounge-disclosure { padding:0; }
.lounge-disclosure > summary {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  min-height:54px; padding:14px 20px; cursor:pointer; list-style:none;
  color:#432a19; font:22px/1.2 var(--serif);
}
.lounge-disclosure > summary::-webkit-details-marker { display:none; }
.lounge-disclosure > summary::after {
  content:""; flex:none; width:8px; height:8px;
  border:solid #785324; border-width:0 2px 2px 0;
  transform:rotate(45deg) translateY(-2px);
}
.lounge-disclosure[open] > summary::after { transform:rotate(225deg); }
.lounge-disclosure > summary:hover { background:#f4e8d4; }
.lounge-disclosure[open] > summary { border-bottom:1px solid #ddcbae; }
.lounge-disclosure > :not(summary) { margin:0; padding:18px 20px 22px; }
.lounge-sidebar .lounge-rules-copy h2 { font-size:24px; margin:0; }
.lounge-post > header { display:flex; justify-content:space-between; gap:24px; border-bottom:1px solid #e6d8c1; padding-bottom:20px; }
.lounge-post h2,.lounge-sidebar h2 { margin:10px 0 0; font-size:clamp(27px,3vw,40px); }
.lounge-author { display:flex; flex-direction:column; align-items:flex-end; gap:4px; color:#795a3e; font-size:13px; white-space:nowrap; }
.lounge-post-body { margin:26px 0; font-size:18px; line-height:1.7; white-space:pre-wrap; }
.lounge-report { border:0; background:none; color:#795a3e; text-decoration:underline; cursor:pointer; padding:4px 0; }
.lounge-replies { display:grid; gap:12px; margin-top:28px; border-top:1px solid #e6d8c1; padding-top:22px; }
.lounge-reply { border-left:3px solid #c69a51; background:#f7edde; padding:18px 20px; }
.lounge-reply .lounge-author { align-items:flex-start; }
.lounge-reply p { margin:10px 0; white-space:pre-wrap; }
.lounge-reply-form { margin-top:24px; display:grid; gap:10px; }
.lounge-reply-form textarea { min-height:100px; }
.lounge-reply-form .button { justify-self:start; }
.lounge-rules ol { margin:22px 0; padding-left:22px; display:grid; gap:13px; }
.lounge-rules p { border-top:1px solid #dfcfb5; padding-top:20px; font-size:14px; line-height:1.6; }
.lounge-quiet,.dashboard-muted { color:#80684f; }
.honeypot { position:absolute; left:-9999px; }
.lounge-moderation { margin:0 5% 80px; background:#21120d; color:#f7e9cf; border-color:#9e733b; }
.lounge-moderation .section-heading { display:flex; justify-content:space-between; gap:30px; }
.lounge-moderation .section-heading p { max-width:500px; color:#d4b98d; }
.moderation-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:18px; margin-top:30px; }
.moderation-item { border:1px solid #8e6636; padding:22px; background:#150b08; }
.moderation-item h3 { margin:10px 0; }
.moderation-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.lounge-moderation details { margin-top:28px; border-top:1px solid #6f4a25; padding-top:20px; }
@media (max-width:900px) {
  .lounge-layout { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .lounge-hero { min-height:360px; }
  .lounge-hero h1 { font-size:clamp(38px,13vw,58px); }
  .lounge-post > header,.lounge-moderation .section-heading { flex-direction:column; }
  .lounge-author { align-items:flex-start; white-space:normal; }
}
@media (max-width:420px) {
  .site-header .header-actions [data-action="search-open"] { display:none; }
  .site-header .wordmark { min-width:0; }
  .site-header .wordmark span { white-space:normal; line-height:1.05; }
  .lounge-hero,.lounge-layout,.lounge-moderation { min-width:0; }
}

/* Keep the main actions within easy reach on smaller screens. */
@media (max-width: 900px) {
  .site-header nav { max-height: calc(100vh - 72px); max-height: calc(100dvh - 72px); overflow-y: auto; }
}
@media (max-width: 600px) {
  :root { --hero-copy-top: 44px; --hero-eyebrow-gap: 14px; --hero-action-gap: 18px; }
  .site-header .header-actions { padding-left: 0; border-left: 0; gap: 0; }
  .site-header .header-actions .icon-button { width: 44px; height: 44px; }
  .site-header .header-actions .menu-toggle { width: 44px; }
  .site-header .header-actions .menu-toggle .menu-label { display: none; }
  .site-header .wordmark { font-size: clamp(11px, 3.3vw, 13px); }
  .site-header .wordmark img { width: 25px; }

  .hero { min-height: 0; }
  .hero-copy { padding-bottom: 36px; }
  .hero .eyebrow { font-size: 10px; }
  .hero h1,
  :is(.auction-house-hero,.makers-workshop-hero,.performer-application-hero) h1 {
    font-size: clamp(32px, 10.5vw, 52px);
    overflow-wrap: anywhere;
  }
  .hero-copy > p { font-size: 15px; line-height: 1.55; }
  .hero-footnote { margin-top: 16px; }

  :is(.booking-stage-hero,.private-collection-hero,.shop-category-hero) { min-height: 380px; }
  .booking-stage-hero .hero-background { object-position: 90% center; }
  :is(.auction-house-hero,.makers-workshop-hero,.performer-application-hero) { min-height: 0; }
  :is(.auction-house-hero-copy,.makers-workshop-hero-copy,.performer-application-hero > div) { padding-bottom: 72px; }
  .shop-counter-hero:has(> .shop-category-browser) { min-height: 0; }
  .shop-counter-hero > .shop-category-browser { padding: 8px 4% 20px; }
  .shop-category-browser .shop-category-button { min-height: 44px; line-height: 1.35; }
  .shop-category-grid .shop-category-button::before { flex-shrink: 0; }

  .headline-performance { min-height: 0; padding-block: 44px; }
  .headline-performance-copy h2 { font-size: clamp(36px, 11vw, 62px); }
  .headline-performance-formats { position: static; margin-top: 24px; }
  .professional-review-steps { grid-template-columns: 1fr; }
  .back-to-top { width: 44px; height: 44px; }
  .filter-bar .field select { font-size: 16px; }
  .product-badge { font-size: 10px; }
  .product-meta, .product-bottom span:last-child { font-size: 11px; }
  input:not([type="checkbox"]):not([type="radio"]), select, textarea { font-size: 16px; }
}


.exchange-hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.private-room-back { display:block; width:fit-content; margin-bottom:18px; color:#f5d69e; }
@media (min-width: 520px) {
  .private-rooms > .section-heading {
    position: relative;
  }
  .private-rooms > .section-heading::after {
    content: "";
    position: absolute;
    right: clamp(20px, 6vw, 100px);
    top: 50%;
    width: clamp(72px, 13vw, 168px);
    aspect-ratio: 2;
    transform: translateY(-50%);
    background: url("ornament-wand.svg") center / contain no-repeat;
    opacity: .36;
    pointer-events: none;
  }
}
.private-room-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,3vw,32px); }
.private-room-card { position:relative; isolation:isolate; display:flex; align-items:end; min-height:320px; overflow:hidden; border:1px solid #a17644; color:#fff1d7; background:#24120d; }
.private-room-card img, .private-room-card::after { position:absolute; inset:0; width:100%; height:100%; }
.private-room-card img { object-fit:cover; z-index:-2; }
.private-room-card::after { content:''; background:linear-gradient(0deg,#180c08 8%,rgba(24,12,8,.9) 45%,rgba(24,12,8,.08)); z-index:-1; }
.private-room-copy { padding:clamp(22px,4vw,44px); }
.private-room-copy h3 { margin:10px 0; color:inherit; font-size:clamp(27px,4vw,42px); }
.private-room-copy p { margin:0 0 18px; max-width:48ch; color:#f4dfbc; }
.private-room-copy .eyebrow, .private-room-copy .text-link, .private-room-lock { color:#f1ce91; }
.private-room-lock { display:inline-block; border-top:1px solid #a17644; padding-top:10px; font-size:.87rem; }
.private-admission { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(18px,5vw,64px); align-items:center; border-top:1px solid #b18b54; }
.private-admission ol { padding-left:1.5rem; }
.private-admission li + li { margin-top:14px; }
.auction-intake-card { max-width:780px; margin-inline:auto; }
.auction-rights { display:flex; align-items:baseline; gap:10px; margin-bottom:12px; }
.auction-rights input { width:auto; }
@media (max-width:900px) {
  .private-room-grid, .private-admission { grid-template-columns:1fr; }
  .private-room-card { min-height:280px; }
}

/* Phone layout: give the entrance and each homepage chapter its own space. */
@media (max-width: 700px) {
  .home-hero .hero-copy {
    padding-block: 62px 40px;
    text-align: center;
  }
  .home-hero::before {
    background: linear-gradient(180deg, #170c08b8, #170c0899 36%, #170c08ed 70%, #170c08);
  }
  .home-hero .hero-copy > .eyebrow { margin-bottom: 20px; }
  .home-hero h1 { margin-inline: auto; }
  .home-hero .hero-copy > p {
    margin: 22px auto 30px;
    font-size: 15px;
    line-height: 1.65;
  }
  .home-hero .button-row {
    width: min(100%, 340px);
    margin-inline: auto;
    gap: 12px;
  }
  .home-hero .button-row .button { min-height: 48px; padding-inline: 8px; }
  .home-hero .button-row .button:first-child { min-height: 52px; }
  .home-hero .hero-discoveries {
    width: min(88%, 420px);
    margin-bottom: 40px;
    gap: clamp(12px, 3.6vw, 18px);
  }
  .home-hero .hero-discoveries > aside {
    justify-items: center;
    gap: 8px;
    padding: 16px 10px 8px;
    text-align: center;
  }
  .home-hero .hero-discoveries > aside > img { width: 36px; height: 42px; }
  .home-hero .hero-discoveries h2 { font-size: clamp(16px, 4vw, 19px); }
  .home-hero .hero-discoveries .auction-feature-link {
    justify-self: center;
    justify-content: center;
    font-size: 11px;
  }
  .home-hero + .trust-ribbon {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 145px));
    justify-content: center;
    gap: 10px 14px;
    padding: 18px 6%;
    text-align: center;
    font-size: 9px;
  }

  .home-destination.section-wrap,
  .home-destination:not(.home-performers) > .section-wrap { padding-block: 64px; }
  .home-house .section-heading {
    align-items: center;
    gap: 18px;
    margin-bottom: 32px;
    text-align: center;
  }
  .home-house .section-heading h2 { max-width: 14ch; margin-inline: auto; }
  .home-house .house-showcase { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .home-house .house-still-life { min-height: 0; aspect-ratio: 1.2; }
  .home-destination :is(.auction-showcase-copy, .makers-showcase-copy, .professional-home, .headline-performance-copy) {
    text-align: center;
  }
  .home-destination :is(.auction-showcase-intro, .makers-showcase-copy > p, .professional-home-intro p, .headline-performance-copy > p) {
    margin-inline: auto;
  }
  .home-destination :is(.auction-selections, .makers-creation-list) { text-align: start; }
  .home-auctions .auction-showcase-action {
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }
  .home-destination :is(.section-heading > .text-link, .makers-enter, .headline-booking-link, .auction-showcase-action > .button, .professional-home-enter) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    max-width: 100%;
    text-align: center;
  }
  .home-house .section-heading > .text-link,
  .home-destination .makers-enter { padding-block: 8px; }
  .home-private .professional-home-intro { margin-bottom: 16px; }
  .home-private .professional-home-enter { margin-top: 28px; }
  .home-performers .headline-performance {
    min-height: 0;
    padding: 64px 6% 48px;
  }
  .home-performers .headline-performance::before {
    background: linear-gradient(180deg, #170c0bc7, #170c0bc9 45%, #160c0ef5);
  }
  .home-performers .headline-performance-copy { margin-inline: auto; }
  .home-performers .headline-performance-formats {
    position: static;
    justify-content: center;
    margin-top: 34px;
    text-align: center;
  }
  #main:has(> .home-hero) + .site-footer .footer-invitation {
    flex-direction: column;
    align-items: center;
    gap: 20px;
    text-align: center;
  }
  #main:has(> .home-hero) + .site-footer .footer-enter {
    justify-content: center;
    margin-inline: auto;
    min-height: 46px;
    text-align: center;
  }
}

/* The Members’ Room and member profile share one card design. */
.member-room-hero { position: relative; isolation: isolate; overflow: hidden; color: #f8edd9; background: #24160f; }
.member-room-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 52%; z-index: -2; }
.member-room-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #1c100bec, #1c100bab 55%, #1c100b64); }
.member-room-hero .section-wrap { padding-block: clamp(54px, 9vw, 118px); }
.member-room-hero :is(.breadcrumb, .breadcrumb a) { color: #f2d6a6; }
.member-room-hero .eyebrow { display: block; color: #e5c58b; margin-top: 30px; }
.member-room-hero h1 { max-width: 15ch; font-size: clamp(42px, 7vw, 86px); line-height: 1; margin: 14px 0 18px; }
.member-room-hero p:not(.breadcrumb) { max-width: 36ch; margin-bottom: 24px; color: #f4e6d1; }
.member-room-hero .button { background: #e0bd79; color: #29170f; border-color: #e0bd79; }
.member-index { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 32px; }
.member-index button { width: 44px; min-height: 44px; background: #2d1c13; color: #fff3dd; border: 1px solid #8f6c40; font-weight: 700; }
.member-index button:disabled { background: #efe5d1; border-color: #d7c8ac; color: #766650; }
.member-index button:not(:disabled):hover { background: #6b472c; }
.member-letter-group + .member-letter-group { margin-top: 36px; }
.member-letter-group > h3 { scroll-margin-top: 110px; border-bottom: 1px solid #cdb68d; padding-bottom: 10px; margin-bottom: 16px; color: #734d24; font-size: 26px; }
.member-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 290px), 1fr)); gap: 16px; }
.member-card { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 16px; align-content: start; border: 1px solid #d5c09b; border-top: 2px solid #a78249; background: #fbf5e9; padding: clamp(14px, 3vw, 24px); }
.member-avatar { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; object-fit: cover; background: #362219; color: #f2d49c; }
.member-initial { font: 30px/1 var(--serif); }
.member-card-copy { overflow-wrap: anywhere; }
.member-card :is(h3, h4) { font: 25px/1.14 var(--serif); margin: 0 0 8px; }
.member-specialty { color: #735022; font-size: 13px; font-weight: 650; margin-bottom: 8px; }
.member-bio { white-space: pre-wrap; margin-bottom: 8px; }
.member-card .text-link { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; }
.dashboard-member-nav { display: flex; flex-wrap: wrap; gap: 10px; }
.dashboard-member-nav .button { min-height: 44px; justify-content: center; text-align: center; }
.account-dashboard :is(#account-profile, #account-activity) { scroll-margin-top: 110px; }
.member-profile-intro { display: flex; flex-wrap: wrap; align-items: start; justify-content: space-between; gap: 12px; margin-bottom: 22px; }
.member-profile-status { background: #efe3c9; color: #594321; padding: 7px 12px; font-size: 12px; font-weight: 650; }
.member-profile-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 26px; }
.member-profile-layout .eyebrow { display: block; margin-bottom: 12px; }
.member-profile-layout > div > .text-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 10px; }
#member-profile-form label { display: grid; gap: 6px; margin-bottom: 12px; }
#member-profile-form :is(input:not([type=checkbox]), textarea) { width: 100%; min-width: 0; padding: 10px; color: #2c1b12; background: #fffaf1; border: 1px solid #bca783; font-size: 16px; }
#member-profile-form .member-check { display: flex; align-items: center; gap: 9px; min-height: 44px; margin-bottom: 4px; }
#member-profile-form .member-check input { flex: 0 0 auto; width: 18px; height: 18px; accent-color: #754a27; }
#member-profile-form .form-note { margin-bottom: 12px; }
.account-dashboard .owner-switch span { overflow-wrap: anywhere; min-width: 0; }
@media (min-width: 701px) { .private-room-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (min-width: 1180px) { .private-room-grid { grid-template-columns: repeat(4,minmax(0,1fr)); } }
@media (max-width: 700px) {
  .member-room-hero { text-align: center; }
  .member-room-hero > img { object-position: 65% 50%; }
  .member-room-hero::before { background: linear-gradient(180deg, #1c100ba6, #1c100bbf 68%, #1c100be8); }
  .member-room-hero h1, .member-room-hero p { margin-inline: auto; }
  .member-profile-layout { grid-template-columns: 1fr; }
  .dashboard-member-nav > a { flex: 1 1 auto; }
}

/* A compact video spotlight between the shop hero and search. */
.shop-counter-film {
  display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);
  align-items:center; gap:clamp(24px,5vw,68px);
  padding-block:clamp(30px,4.5vw,64px);
}
.shop-counter-film-copy h2 {
  margin:12px 0 14px; font-size:clamp(34px,4vw,60px); line-height:1.03;
}
.shop-counter-film-copy p { max-width:34ch; line-height:1.65; }
.shop-counter-film video {
  display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover;
  background:#25160f; border:1px solid #977443; box-shadow:0 12px 30px #3a261324;
}
.shop-counter-film-copy .shop-film-creator { margin:-4px 0 12px; color:#765427; font-size:13px; }
.shop-counter-film-copy .shop-film-price { margin:16px 0 14px; color:#402718; }
.shop-film-price strong { font:clamp(23px,3vw,31px)/1.15 var(--serif); }
.shop-film-trailer { margin:0; min-width:0; }
.shop-film-trailer figcaption { margin-top:8px; color:#745736; font-size:12px; }
.shop-film-trailer a { color:inherit; text-decoration:underline; text-underline-offset:2px; }
@media (max-width:700px) {
  .shop-counter-film { grid-template-columns:minmax(0,1fr); text-align:center; gap:18px; }
  .shop-counter-film-copy p { margin-inline:auto; }
}
 
.shop-supplier-note { margin-bottom:18px; }
.supplier-catalog-card .product-picture { display:block; }
.supplier-catalog-card .product-title { overflow-wrap:anywhere; }
.shop-browse-more { display:grid; gap:10px; justify-items:center; margin-top:30px; text-align:center; }
.supplier-photo-missing { display:grid; place-items:center; min-height:120px; padding:20px; color:#725737; }
.supplier-photo-missing[hidden], img[data-supplier-photo][hidden] { display:none; }
.supplier-detail-image img { object-fit:contain; }

/* Keep account labels and fields in a readable vertical flow. */
.auth-layout { grid-template-columns:repeat(2,minmax(0,1fr)); }
:is(#login-form, #register-form, #lounge-request-form, #maker-profile-form) label { display:grid; gap:8px; margin-bottom:18px; }
:is(#login-form, #register-form, #lounge-request-form, #maker-profile-form) :is(input, textarea) { display:block; width:100%; min-width:0; box-sizing:border-box; padding:13px 14px; border:1px solid #bda77e; border-radius:0; background:#fffaf2; color:#2f2118; font:inherit; line-height:1.5; }
:is(#login-form, #register-form, #lounge-request-form, #maker-profile-form) textarea { min-height:130px; resize:vertical; }
:is(#login-form, #register-form, #lounge-request-form, #maker-profile-form) :is(input, textarea):focus-visible { outline:3px solid #856128; outline-offset:3px; }
.owner-switch .button.secondary { color:#f3e3bf; border-color:#bda77e; }
.owner-switch .button.secondary:hover { background:#f3e3bf; color:#2a180f; }
@media(max-width:600px) { #maker-profile-form .button { width:100%; justify-content:center; } }
@media(max-width:850px) { .auth-layout { grid-template-columns:minmax(0,1fr); } }

.dashboard-record .auction-result-state { color:#856128; }

.maker-drafts-panel { max-width:1040px; margin-inline:auto; }
.maker-drafts-panel [data-maker-editor] { margin-top:24px; padding-top:24px; border-top:1px solid #cdbb9c; }
.maker-drafts-panel h3 { margin-bottom:16px; font-size:clamp(1.45rem,2.6vw,2rem); }
.maker-draft-list > summary { cursor:pointer; padding:14px 0; font-weight:600; }
.maker-drafts-panel .button-row { display:flex; gap:12px; flex-wrap:wrap; margin-top:20px; }
@media(max-width:600px) { .maker-drafts-panel .button-row > * { width:100%; justify-content:center; } }

.maker-photo-editor { margin-top:28px; padding-top:24px; border-top:1px solid #cdbb9c; }
.maker-photo-editor label { display:block; margin-block:16px 8px; }
.maker-photo-editor input { max-width:100%; }
.maker-photo-preview { display:block; width:min(100%,360px); height:auto; max-height:360px; object-fit:contain; margin-block:16px; }
