@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
}
.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)
}
.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:34px; }
.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:20px; 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; }
.maker-studios { display:grid; grid-template-columns:.75fr 1.5fr; gap:60px; padding:76px 0 24px; }
.maker-studios-heading h2 { margin:14px 0; font-size:clamp(36px,4vw,54px); line-height:1.04; }
.maker-studios-heading p { max-width:330px; color:var(--muted); line-height:1.6; }
.maker-studio-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.maker-studio-card { min-height:260px; padding:30px; display:flex; flex-direction:column; border:1px solid var(--line); background:#fff9ee; }
.maker-studio-card.active { box-shadow:inset 0 4px #a87437; }
.maker-studio-card>span { color:#97652f; font-size:9px; letter-spacing:.13em; }
.maker-studio-card h3 { margin:28px 0 10px; font-size:30px; }
.maker-studio-card p { color:var(--muted); }
.maker-studio-card small { margin-top:12px; color:#8d6234; }
.maker-studio-card>div { display:flex; flex-wrap:wrap; gap:18px; margin-top:auto; padding-top:24px; }
.maker-studio-card button { border:0; background:transparent; }
.maker-shop-filter { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:26px; padding-bottom:18px; border-bottom:1px solid var(--line); }
.maker-shop-filter button { padding:10px 15px; border:1px solid var(--line); background:transparent; color:var(--ink); font-size:11px; }
.maker-shop-filter button.active { background:#3a2116; border-color:#3a2116; color:#fff8eb; }
.makers-catalog .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.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-materials { min-height:36px; margin-top:10px; color:var(--muted); font-size:12px; line-height:1.5; }
.maker-lead-time { display:flex; 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 { 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; }

@media(max-width:950px) {
  .maker-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .maker-studios,.maker-trust { grid-template-columns:1fr; gap:34px; }
  .makers-catalog .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  .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; }
  .maker-studios { padding-top:56px; }
  .maker-studio-grid,.makers-catalog .product-grid,.maker-trust-grid { grid-template-columns:1fr; }
  .maker-studio-card { min-height:230px; }
  .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-catalog .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
.auction-page-intro { padding-bottom:26px; }
.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-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-rules { margin-top:48px; border-block:1px solid var(--line); padding:24px 0; }
.auction-rules summary,.auction-history summary { cursor:pointer; padding:10px 0; font-size:15px; }
.auction-rules p,.auction-history p { max-width:780px; margin:14px 0; font-size:13px; }
.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:56px minmax(0,1fr); gap:7px 16px;
  width:370px; max-width:88%; margin:0 0 32px max(5%,calc((100% - 1332px)/2)); padding:15px 18px;
  background:linear-gradient(90deg,rgba(12,16,12,.78),rgba(12,16,12,.40));
  border-left:1px solid #d1ae6d88; color:#fffaf0;
}
.hero-auction>img { grid-column:1; grid-row:1 / 5; width:56px; height:70px; 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 6px; }
.hero-auction h2 { font-size:21px; line-height:1.15; 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:300px; padding:13px 15px; margin-bottom:26px; gap:6px 12px; grid-template-columns:46px minmax(0,1fr); }
  .hero-auction>img { width:46px; height:60px; }
  .hero-auction h2 { font-size:19px; }
  .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-makers { display:grid; grid-template-columns:minmax(0,1fr) 48px; align-items:center; gap:14px; width:270px; max-width:100%; margin-left:auto; padding:14px 16px; border-right:1px solid #d1ae6d88; background:linear-gradient(270deg,rgba(12,16,12,.78),rgba(12,16,12,.3)); color:#fffaf0; }
.hero-makers .eyebrow { display:block; margin:0 0 7px; font-size:8px; letter-spacing:.13em; color:#e0bd79; }
.hero-makers h2 { font-size:22px; line-height:1.12; letter-spacing:-.02em; }
.hero-makers p { font-size:11px; line-height:1.45; color:#d9d7ca; margin:8px 0; }
.hero-makers>img { width:48px; height:62px; object-fit:cover; }
.hero-makers .auction-feature-link { font-size:11px; }
@media(min-width:701px) and (max-width:1000px) {
  .hero-discoveries .hero-auction { width:330px; }
  .hero-makers { width:240px; }
}
@media(max-width:700px) {
  .hero-discoveries { width:88%; gap:18px; margin-bottom:26px; flex-direction:column; align-items:flex-start; }
  .hero-makers { width:250px; align-self:flex-end; }
}

/* 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 .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:radial-gradient(ellipse at 100% 0%,#78402c44,transparent 60%),linear-gradient(120deg,#21130f,#382019); 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(2,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: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-path-grid { grid-template-columns:1fr; }
  .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; }
}

.preview-fields { border:0; padding:0; margin:0; min-width:0; }

/* 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-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; }
}