﻿@charset "UTF-8";

:root {
  color-scheme: light;
  --paper: #ede9df;
  --ink: #282723;
  --muted: #6d675d;
  --bronze: #8b7554;
  --line: #ccc6b8;
  --focus: #934e35;
  --rust: #934e35;
  --serif: Georgia, "Times New Roman", serif;
  --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --page-gutter: clamp(24px, 3.2vw, 58px);
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--paper); }
body { margin: 0; color: var(--ink); background: radial-gradient(ellipse at 9% 20%, #f7f3e970, transparent 45%), var(--paper); font-family: var(--sans); font-size: 14px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
button, select { font: inherit; color: inherit; }
button, a, select, summary { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
button:disabled { cursor: wait; opacity: .5; }
a { color: inherit; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible, .status:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
[hidden] { display: none !important; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
svg { display: block; }
p, h1, h2, h3 { margin: 0; }
main { min-width: 0; }
.eyebrow { color: #766349; font-size: 8px; font-weight: 600; letter-spacing: 1.7px; line-height: 1.5; text-transform: uppercase; }

.site-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 60px; padding: 9px var(--page-gutter); }
.studio-brand { min-width: 0; }
h1 { font-family: var(--serif); font-size: 36px; font-weight: 400; line-height: 1; letter-spacing: -.065em; white-space: nowrap; }
h1 > span { color: var(--rust); }
.header-wallet { display: flex; align-items: center; justify-content: flex-end; gap: 12px; min-width: 0; }
.wallet-actions { display: flex; justify-content: flex-end; gap: 8px; }
.wallet-button { display: flex; justify-content: center; align-items: center; gap: 12px; min-height: 40px; padding: 7px 12px; border: 1px solid #ada38e; border-radius: 0; background: transparent; color: #574f43; font-size: 10px; white-space: nowrap; }
.wallet-button:hover:not(:disabled) { background: #e4ddcf; }
.wallet-button > span { font-size: 15px; }
.connected-wallet { color: var(--muted); font-family: ui-monospace, "Cascadia Code", Consolas, monospace; font-size: 9px; text-align: right; }

.studio { --header-height: 0px; --caption-space: 112px; --wall-top: 16px; --wall-bottom: 8px; --utility-height: 44px; --painting-height: max(48px, calc(100svh - var(--header-height) - var(--wall-top) - var(--wall-bottom) - var(--utility-height) - var(--caption-space))); --edition-width: calc(var(--painting-height) * 9 / 16); min-width: 0; }
.gallery-wall { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) var(--edition-width); grid-template-rows: minmax(0, 1fr) var(--utility-height); height: calc(100svh - var(--header-height)); align-items: stretch; column-gap: 20px; min-width: 0; padding: var(--wall-top) var(--page-gutter) var(--wall-bottom) 0; overflow: visible; background: radial-gradient(ellipse at 42% 32%, #d6cebc99, transparent 70%), linear-gradient(125deg, #cec5b4, #b7ad9a 72%, #c7bead); }
.gallery-wall::after { position: absolute; content: ''; inset: 0; pointer-events: none; box-shadow: inset 0 0 50px #fff2; }
.history-panel { container-type: size; position: relative; min-width: 0; min-height: 0; }
.history-panel.can-scroll-left::after { position: absolute; content: ''; left: 0; top: 0; width: 48px; height: calc(100cqh - var(--caption-space)); z-index: 2; pointer-events: none; background: linear-gradient(90deg, #c9c0afc7, #c9c0af00); }
.sequence-viewport { container-type: inline-size; height: calc(100% - 18px); min-height: 0; max-width: 100%; overflow-x: auto; overflow-y: hidden; overflow-anchor: none; scroll-behavior: auto; overscroll-behavior-x: contain; scrollbar-color: #8f816b #c8beac; scrollbar-width: thin; padding-bottom: 8px; }
.sequence-viewport:focus-visible { outline: 2px solid var(--focus); outline-offset: -2px; }
.sequence-strip { --sequence-card-width: calc(var(--painting-height) * 9 / 16); --sequence-divider-size: 2px; --sequence-divider-period: 6px; --sequence-divider-color: #6c635b99; display: flex; align-items: flex-start; gap: 0; width: max-content; max-width: none; margin: 0; overflow-anchor: none; }
.sequence-item { position: relative; flex: 0 0 var(--sequence-card-width); width: var(--sequence-card-width); min-width: 0; margin: 0; overflow-anchor: none; }
.sequence-work { position: relative; display: block; width: 100%; height: var(--painting-height); padding: 0; border: 0; border-radius: 0; background: #eae1c6; color: #776c5b; overflow: hidden; }
.sequence-item + .sequence-item::after { content: ''; position: absolute; inset: 0 auto 0 0; width: var(--sequence-divider-size); background: repeating-linear-gradient(to bottom, var(--sequence-divider-color) 0 var(--sequence-divider-size), transparent var(--sequence-divider-size) var(--sequence-divider-period)); pointer-events: none; z-index: 1; }
.sequence-work:focus-visible { outline-offset: -3px; z-index: 1; }
.sequence-work img { display: block; width: 100%; height: 100%; object-fit: fill; }
.sequence-placeholder { position: absolute; inset: 0; display: grid; place-items: center; padding: 15px; font-size: 11px; line-height: 1.5; text-align: center; }
.sequence-caption { height: 80px; padding: 9px 12px 11px; color: #625a4d; }
.sequence-caption-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 30px; }
.sequence-caption strong { display: block; color: var(--ink); font-family: var(--serif); font-size: 18px; font-weight: 400; line-height: 1.25; }
.sequence-caption .sequence-minter { display: block; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-top: 3px; font-family: ui-monospace, "Cascadia Code", Consolas, monospace; font-size: 8px; line-height: 1.55; overflow-wrap: anywhere; }
.sequence-minter a { text-decoration-color: #a18e72; text-underline-offset: 3px; }
:is(.sequence-download, .sequence-open) { display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; margin: -3px -3px -3px 0; padding: 6px; border: 0; border-radius: 50%; background: transparent; color: #514a3f; }
:is(.sequence-download, .sequence-open):hover:not(:disabled) { background: #eee7da85; }
:is(.sequence-download, .sequence-open) svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.sequence-item.is-selected .sequence-caption strong { color: #4c3c27; }
.sequence-empty { display: grid; place-items: center; width: 100cqw; height: var(--painting-height); padding: 25px; color: #716553; font-size: 12px; text-align: center; }
.gallery-utilities { grid-column: 1 / -1; display: grid; grid-template-columns: subgrid; align-items: center; min-height: 44px; }
.history-links { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; padding-inline: 12px; }
.gallery-credit { justify-self: end; font-size: 8px; letter-spacing: .8px; line-height: 1.5; text-align: right; }
.gallery-credit a { text-underline-offset: 3px; text-decoration-color: #8b7b63; }
.text-button { flex: 0 0 auto; padding: 4px 0; border: 0; background: transparent; color: #66543b; font-size: 10px; text-decoration: underline; text-decoration-color: #b2a087; text-underline-offset: 4px; }
.text-button span { display: inline-block; margin-left: 3px; }
#prior-editions-button, #latest-edition-button { min-height: 44px; color: #514b40; text-decoration: none; }
#prior-editions-button > span { margin: 0 4px 0 0; }
#latest-edition-button { margin-left: auto; }
.gallery-utilities .text-button:disabled { cursor: default; opacity: .45; text-decoration: none; }
.gallery-utilities .text-button:hover:not(:disabled) { text-decoration: underline; }
.sequence-footer { height: 18px; overflow: auto; display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 20px; padding: 0 12px; color: #665d4e; font-size: 9px; }
#sequence-status { margin-left: auto; }
.sequence-footer .text-button { font-size: 9px; }

.mint-panel { --actions-space: var(--caption-space); position: relative; display: grid; grid-template-rows: minmax(0, 1fr) var(--actions-space); align-self: stretch; min-width: 0; min-height: 0; }
.mint-card { position: relative; display: grid; grid-template-rows: auto max-content minmax(max-content, 1fr); min-width: 0; min-height: 0; padding: clamp(16px, 1.6vw, 24px) 20px; border: 1px solid transparent; background: #eae1c6; }
.mint-card::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: repeating-linear-gradient(to right, #6c635b99 0 2px, transparent 2px 6px) left top / 100% 2px no-repeat, repeating-linear-gradient(to right, #6c635b99 0 2px, transparent 2px 6px) left bottom / 100% 2px no-repeat, repeating-linear-gradient(to bottom, #6c635b99 0 2px, transparent 2px 6px) left top / 2px 100% no-repeat, repeating-linear-gradient(to bottom, #6c635b99 0 2px, transparent 2px 6px) right top / 2px 100% no-repeat; }
#mint-title { max-width: none; margin-top: 0; font-family: var(--serif); font-size: clamp(28px, 2.5vw, 36px); font-weight: 400; line-height: 1.04; letter-spacing: -.9px; white-space: normal; }
.caution-sign { display: block; width: 100%; height: auto; margin-block: 7px 8px; transform: rotate(-4deg); filter: drop-shadow(1px 3px 2px #28231726); }
.mint-context { margin-top: 14px; }
#next-edition-label { font-size: 10px; font-weight: 600; letter-spacing: .15px; }
.mint-prose { min-height: 0; margin-top: 16px; }
.mint-description { color: #6f6556; font-size: clamp(12px, 1.6vh, 15px); line-height: 1.55; }
.mint-description + .mint-description { margin-top: 14px; }
.mint-offer { align-self: end; padding-top: 16px; }
.price { display: flex; gap: 9px; align-items: center; }
.price-number { font-family: var(--serif); font-size: clamp(42px, 5.5vh, 64px); line-height: 1; letter-spacing: -1.4px; }
.price-unit { min-width: 0; color: #645c4e; line-height: 1.5; }
.quote-price { display: block; font-size: clamp(10px, 1.3vh, 13px); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.price-gas { display: block; margin-top: 1px; color: #827564; font-size: 9px; }
.mint-actions { display: grid; grid-template-rows: 44px 28px minmax(0, 1fr); min-height: 0; padding-top: 12px; }
.mint-secondary { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; }
.mint-wallet { display: flex; align-items: center; gap: 8px; min-width: 0; }
.mint-wallet .text-button { min-height: 28px; font-size: 8px; white-space: nowrap; }
.primary-button { display: flex; align-items: center; justify-content: space-between; gap: 8px; height: 44px; width: 100%; padding: 7px 12px; border: 1px solid var(--ink); border-radius: 0; background: var(--ink); color: #fbf7ef; font-size: clamp(11px, 1.5vh, 14px); font-weight: 500; transition: background .15s; }
.primary-button:hover:not(:disabled) { background: #46483f; }
.primary-button > span { font-size: 18px; font-weight: 400; }
#mint-button:disabled { cursor: not-allowed; }
.learn-link { justify-self: start; display: inline-flex; align-items: center; gap: 7px; min-height: 28px; color: #66543b; font-size: 10px; text-decoration-color: #b2a087; text-underline-offset: 4px; }
.status { min-height: 0; overflow-y: auto; color: #67583e; font-size: 10px; line-height: 1.4; overflow-wrap: anywhere; }
.status[data-tone="error"], .status.error { color: #9b392c; }
.status[data-tone="success"], .status.success { color: #3f6447; }

.collection-dialog { width: min(880px, calc(100vw - 32px)); max-height: calc(100svh - 32px); margin: auto; padding: 0; border: 1px solid #b5a991; background: var(--paper); color: var(--ink); box-shadow: 0 20px 80px #211d1955; }
.collection-dialog::backdrop { background: #24221b75; }
.dialog-toolbar { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; justify-content: space-between; padding: 9px 22px; border-bottom: 1px solid var(--line); background: var(--paper); }
.dialog-close { display: flex; align-items: center; gap: 12px; min-height: 44px; border: 0; background: transparent; font-size: 11px; }
.dialog-close span { font-size: 25px; font-weight: 300; }

.collection-section { padding: 22px; }
.section-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; margin-bottom: 24px; }
.section-heading h2 { margin-top: 5px; font-family: var(--serif); font-size: 29px; font-weight: 400; letter-spacing: -.8px; }
.section-heading p { color: var(--muted); font-size: 11px; padding-bottom: 5px; }
.token-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; }
.empty-state { grid-column: 1 / -1; min-height: 100px; display: grid; place-items: center; padding: 25px; border: 1px dashed #d4cabb; color: var(--muted); font-size: 12px; }
.token-list > button, .token-card { display: block; min-width: 0; padding: 0; border: 1px solid var(--line); border-radius: 0; overflow: hidden; background: #f7f2e9; color: var(--ink); text-align: left; transition: border-color .15s, background .15s; }
.token-list > button:hover, .token-card:hover { border-color: var(--bronze); background: #ece4d7; }
.token-list > button[aria-pressed="true"], .token-card.active, .token-card.selected { border-color: var(--bronze); box-shadow: inset 0 0 0 1px var(--bronze); }
.token-list strong, .token-card h3 { display: block; margin: 0; padding: 12px; font-family: var(--serif); font-size: 18px; font-weight: 400; }
.token-list small, .token-card p { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; overflow-wrap: anywhere; }
.token-card img, .token-card canvas { display: block; width: 100%; height: auto; aspect-ratio: 9 / 16; margin: 0; object-fit: contain; background: #eae1c6; }
.noscript-message { margin: 20px auto; padding: 20px; max-width: 640px; border: 1px solid var(--line); text-align: center; }

@media (min-width: 700px) and (max-width: 1023px) {
  .gallery-wall { column-gap: 14px; }
  .mint-card { padding-inline: 16px; }
}

/* Short desktop windows need more line width, not an undersized prose row.
   Keep the price after the full copy and reserve its own minimum height. */
@media (min-width: 700px) and (min-height: 521px) and (max-height: 740px) {
  .mint-card { padding: 14px 16px; }
  #mint-title { font-size: clamp(24px, calc(3.64vh + 5px), 32px); }
  .mint-prose { margin-top: 12px; }
  .mint-description { font-size: clamp(10px, calc(.9vh + 5.1px), 12px); line-height: 1.4; }
  .mint-description + .mint-description { margin-top: 10px; }
  .mint-offer { padding-top: 12px; }
  .price-number { font-size: 32px; }
}

/* At low heights an edition is too narrow to hold the full invitation legibly.
   Widen only that compact fallback; normal desktop cards exactly match the art. */
@media (min-width: 700px) and (min-height: 521px) and (max-height: 619px) {
  .gallery-wall { grid-template-columns: minmax(0, 1fr) max(var(--edition-width), 272px); }
  .caution-sign { width: 78%; margin-inline: auto; margin-block: 4px; }
}

@media (max-width: 699px) {
  :root { --page-gutter: 14px; }
  .site-header { gap: 10px; padding-block: 10px; }
  h1 { font-size: 31px; }
  .header-wallet { gap: 0; }
  .wallet-actions { gap: 5px; }
  .wallet-button { gap: 6px; padding-inline: 9px; font-size: 9px; }
  .connected-wallet { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .studio { --caption-space: 96px; }
  .gallery-wall { grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(0, 1fr) auto 44px; row-gap: 10px; padding: 10px 0 6px; }
  .history-panel.can-scroll-left::after { width: 32px; }
  .sequence-strip { --painting-height: max(48px, calc(100cqh - var(--caption-space))); }
  .mint-panel { --actions-space: 104px; height: auto; margin: 0 12px; }
  .mint-card { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto auto; gap: 0; padding: 12px 14px; }
  .mint-intro { grid-column: 1; }
  .mint-intro .eyebrow { font-size: 7px; }
  #mint-title { max-width: none; margin-top: 0; font-size: 25px; line-height: 1.05; }
  .caution-sign { width: 154px; margin: 4px auto 6px; }
  .mint-context { margin-top: 6px; }
  #next-edition-label { font-size: 9px; }
  .mint-prose { grid-column: 1; grid-row: 2; margin-top: 10px; }
  .mint-description { font-size: 10.5px; line-height: 1.45; }
  .mint-description + .mint-description { margin-top: 8px; }
  .mint-offer { grid-column: 1; grid-row: 3; align-self: end; padding-top: 10px; }
  .price-number { font-size: 34px; }
  .quote-price { font-size: 9px; line-height: 1.4; }
  .price-gas { font-size: 8px; }
  .mint-actions { padding-top: 8px; }
  .learn-link { justify-self: center; }

  .sequence-caption { height: 64px; padding: 4px 8px; }
  .sequence-caption strong { font-size: 16px; }
  :is(.sequence-download, .sequence-open) { flex-basis: 40px; width: 40px; height: 40px; margin-block: -3px; }
  .sequence-caption .sequence-minter { margin-top: 1px; font-size: 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .gallery-utilities { grid-template-columns: minmax(0, 1fr) 120px; gap: 10px; min-height: 44px; padding-right: 12px; }
  #prior-editions-button, #latest-edition-button { font-size: 9px; }
  .gallery-credit { max-width: 120px; font-size: 8px; letter-spacing: .5px; }
  .sequence-footer { gap: 4px 10px; font-size: 8px; }
  #sequence-status { margin-left: 0; }
  .section-heading { align-items: flex-start; flex-direction: column; gap: 8px; margin-bottom: 19px; }
  .section-heading h2 { font-size: 27px; }
  .token-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
}

@media (max-width: 699px) and (max-height: 700px) and (orientation: portrait) {
  .studio { --header-height: 0px; --caption-space: 96px; }
  .site-header { min-height: 48px; padding-block: 4px; }
  h1 { font-size: 27px; }
  .gallery-wall { row-gap: 6px; padding-top: 6px; }
  .mint-panel { --actions-space: 100px; }
  .mint-card { gap: 0; padding: 8px 10px; }
  .mint-intro .eyebrow { display: none; }
  #mint-title { margin-top: 0; font-size: 20px; }
  .caution-sign { width: 112px; margin-block: 2px 4px; }
  .mint-context { margin-top: 4px; }
  .mint-description { font-size: 9px; line-height: 1.35; }
  .mint-prose { margin-top: 8px; }
  .mint-description + .mint-description { margin-top: 6px; }
  .mint-offer { padding-top: 8px; }
  .price-number { font-size: 28px; }
  .mint-actions { padding-top: 6px; }

  .sequence-caption { height: 64px; padding: 4px 3px; }
  .sequence-caption-heading { display: grid; grid-template-columns: minmax(0, 1fr); min-height: 26px; gap: 0; }
  .sequence-caption strong { font-size: 10px; }
  .sequence-caption-heading :is(.sequence-download, .sequence-open) { justify-self: end; height: 22px; }
  :is(.sequence-download, .sequence-open) { flex-basis: 24px; width: 24px; height: 26px; padding: 3px; margin: 0; }
  .sequence-caption .sequence-minter { font-size: 7px; line-height: 1.3; }
}

@media (orientation: landscape) and (max-height: 520px) {
  :root { --page-gutter: 16px; }
  .site-header { min-height: 48px; padding-block: 4px; }
  h1 { font-size: 29px; }
  .studio { --header-height: 0px; --caption-space: 96px; --wall-top: 8px; --wall-bottom: 4px; --utility-height: 36px; }
  .gallery-wall { padding-top: 8px; padding-bottom: 4px; padding-right: var(--page-gutter); row-gap: 0; column-gap: 12px; grid-template-rows: minmax(0, 1fr) 36px; grid-template-columns: minmax(0, 1fr) min(368px, 56vw); }
  .sequence-caption { height: 64px; padding: 4px 5px; }
  .sequence-caption-heading { gap: 2px; min-height: 26px; }
  .sequence-caption strong { font-size: 12px; }
  .sequence-caption .sequence-minter { font-size: 7px; line-height: 1.3; }
  :is(.sequence-download, .sequence-open) { flex-basis: 26px; width: 26px; height: 26px; padding: 4px; }
  .sequence-footer { height: 18px; overflow: auto; }
  .gallery-utilities { grid-template-columns: subgrid; min-height: 36px; padding-right: 0; }
  .gallery-credit { max-width: none; font-size: 8px; }
  #prior-editions-button, #latest-edition-button { min-height: 36px; }
  .mint-panel { --actions-space: var(--caption-space); height: auto; margin: 0; }
  .mint-card { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto max-content minmax(max-content, 1fr); gap: 0; padding: 8px 12px; }
  .mint-intro { grid-column: 1; }
  .mint-intro .eyebrow { font-size: 7px; }
  #mint-title { max-width: none; margin-top: 0; font-size: 22px; line-height: 1.05; }
  .caution-sign { width: 112px; margin: 1px auto 4px; }
  .mint-context { margin-top: 5px; }
  #next-edition-label { font-size: 9px; }
  .mint-prose { grid-column: 1; grid-row: 2; margin-top: 10px; }
  .mint-description { font-size: 10px; line-height: 1.35; }
  .mint-description + .mint-description { margin-top: 8px; }
  .mint-offer { grid-column: 1; grid-row: 3; align-self: end; padding-top: 10px; }
  .price { flex-direction: row; align-items: center; gap: 7px; }
  .price-number { font-size: 28px; }
  .quote-price { font-size: 8px; }
  .price-gas { font-size: 8px; }
  .mint-actions { padding-top: 12px; }
  .learn-link { justify-self: start; }

}

@media (orientation: landscape) and (max-height: 400px) {
  .caution-sign { width: 84px; margin-block: 0 2px; }
  .mint-prose { margin-top: 6px; }
  .mint-description { font-size: 9px; line-height: 1.25; }
  .mint-description + .mint-description { margin-top: 6px; }
  .mint-offer { padding-top: 6px; }
  .price-number { font-size: 26px; }
}

@media (max-width: 359px) {
  h1 { font-size: 27px; }
  .wallet-button { padding-inline: 7px; font-size: 8px; }
  .gallery-utilities { gap: 7px; padding-right: 9px; }
  .history-links { padding-inline: 9px 0; }
  .gallery-credit { font-size: 7.5px; }
}

/* Main gallery: studio lettering, full-card fading, and navigation at the painting edge.
   These rules leave the separate atelier design study and its footer intact. */
.gallery-study {
  --gallery-industrial: "Bahnschrift", "Arial Narrow", "Helvetica Neue", Arial, sans-serif;
  --gallery-mono: "Cascadia Mono", "SFMono-Regular", Consolas, monospace;
  font-family: Arial, Helvetica, sans-serif;
}
.gallery-study .studio { --utility-height: 0px; }
.gallery-study .gallery-wall { grid-template-rows: minmax(0, 1fr); }
.gallery-study .history-panel.can-scroll-left::after { width: min(150px, 35%); height: calc(100cqh - var(--caption-space) + 68px); background: linear-gradient(90deg, #c9c0af 0%, #c9c0afe8 24%, #c9c0af00 100%); }
.gallery-study .sequence-caption { height: 68px; }
.gallery-study .sequence-caption strong { font-family: var(--gallery-industrial); font-size: 18px; font-weight: 500; line-height: 1.2; letter-spacing: -.25px; }
.gallery-study .sequence-caption .sequence-minter { font-family: var(--gallery-mono); font-size: 10px; }
.gallery-study .sequence-open { border-radius: 0; }
.gallery-study .sequence-viewport { scrollbar-width: auto; scrollbar-color: #76654b #d3c8b5; }
.gallery-study .sequence-viewport::-webkit-scrollbar { height: 16px; }
.gallery-study .sequence-viewport::-webkit-scrollbar-track { background: #d3c8b5; }
.gallery-study .sequence-viewport::-webkit-scrollbar-thumb { background: #76654b; border: 3px solid #d3c8b5; border-radius: 0; min-width: 64px; }
.gallery-study .sequence-viewport::-webkit-scrollbar-thumb:hover { background: #594a35; }
.history-navigation { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
.history-arrow { position: absolute; top: calc((100cqh - var(--caption-space)) / 2); transform: translateY(-50%); display: grid; place-items: center; width: 44px; height: 72px; padding: 10px; border: 0; border-radius: 0; background: #ede9dfb3; color: #39342bcc; pointer-events: auto; }
.history-arrow-prior { left: 0; }
.history-arrow-next { right: 0; }
.history-arrow svg { width: 23px; height: 32px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.history-arrow:hover:not(:disabled) { background: #ede9dfea; color: #29251f; }
.history-arrow:focus-visible { outline-offset: -3px; }
.history-panel:not(.can-scroll-left) .history-arrow-prior, .history-panel:not(.can-scroll-right) .history-arrow-next { display: none; }
.gallery-study .gallery-wall:has(.history-arrow:hover) > .art-magnifier { visibility: hidden; }
.gallery-study .price-number { font-family: var(--gallery-industrial); font-weight: 400; letter-spacing: -2px; }
.gallery-study .quote-price { font-family: var(--gallery-mono); font-size: clamp(9px, 1.2vh, 12px); }
.gallery-study .primary-button { font-family: var(--gallery-industrial); font-size: clamp(12px, 1.6vh, 15px); font-weight: 500; letter-spacing: .05px; color: #29211f; background: #c47870; border-color: #29211f; }
.gallery-study .primary-button:hover:not(:disabled) { background: #b96e66; }
.gallery-study .learn-link { font-family: var(--gallery-mono); font-size: 9px; }
.gallery-study .edition-dialog h2 { font-family: var(--gallery-industrial); font-weight: 500; letter-spacing: -.4px; }
.gallery-study .edition-kicker, .gallery-study .edition-information dt { font-family: var(--gallery-mono); }
.gallery-study .edition-information h3 { font-family: var(--gallery-mono); font-size: 10px; font-weight: 400; line-height: 1.4; letter-spacing: 1px; text-transform: uppercase; }
.gallery-study .edition-process h3 { font-family: var(--gallery-industrial); font-size: 23px; line-height: 1.2; letter-spacing: -.2px; text-transform: none; }
.gallery-study .edition-traits dd { font-family: var(--gallery-industrial); font-size: 13px; }
.gallery-study .edition-watch { font-family: var(--gallery-industrial); font-size: 14px; }
.gallery-study .section-heading h2, .gallery-study .token-list strong, .gallery-study .token-card h3 { font-family: var(--gallery-industrial); }

@media (max-width: 699px) {
  .gallery-study .studio { --caption-space: 108px; }
  .gallery-study .gallery-wall { grid-template-rows: minmax(0, 1fr) auto; }
  .gallery-study .history-panel.can-scroll-left::after { width: min(100px, 28%); height: calc(100cqh - var(--caption-space) + 64px); }
  .gallery-study .sequence-caption { height: 64px; }
  .gallery-study .sequence-caption strong { font-size: 14px; }
  .gallery-study .sequence-caption .sequence-minter { font-size: 8px; }
  .gallery-study .quote-price { font-size: 8px; }
  .history-arrow { width: 36px; height: 60px; padding-inline: 6px; }
}
@media (max-width: 699px) and (max-height: 700px) and (orientation: portrait) {
  .gallery-study .sequence-caption strong { font-size: 10px; }
  .gallery-study .sequence-caption .sequence-minter { font-size: 7px; }
}
@media (orientation: landscape) and (max-height: 520px) {
  .gallery-study .studio { --caption-space: 108px; --utility-height: 0px; }
  .gallery-study .gallery-wall { grid-template-rows: minmax(0, 1fr); }
  .gallery-study .history-panel.can-scroll-left::after { height: calc(100cqh - var(--caption-space) + 64px); }
  .gallery-study .sequence-caption { height: 64px; }
  .gallery-study .sequence-caption strong { font-size: 12px; }
  .gallery-study .sequence-caption .sequence-minter { font-size: 7px; }
  .gallery-study .quote-price { font-size: 8px; }
  .gallery-study .primary-button { font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; scroll-behavior: auto !important; }
}
