/* The collection is hung as a quiet, unframed set of plates. */
.collection-page .catalog-section{padding-bottom:clamp(78px,10vw,156px)}
.collection-page .catalog-status{max-width:1440px;margin:0 auto clamp(32px,4.7vw,68px);padding:12px 0;color:#686961;font:400 11px/1.5 var(--sans);letter-spacing:.035em}
.collection-layout{--catalog-gap:clamp(40px,4.5vw,80px);max-width:1440px;margin:auto;row-gap:clamp(66px,6.3vw,100px)}
/* Preserve the gallery's hanging interval below each title. */
.collection-inner{width:88%;margin-inline:auto;padding-block-end:44px}
.collection-view{display:block}
.collection-view:focus-visible,.piece-action:focus-visible,.piece-dialog :is(button,input,textarea):focus-visible{outline:1px solid #706e60;outline-offset:4px}
#catalog-grid .collection-caption{padding-top:clamp(18px,2vw,28px)}
#catalog-grid .collection-caption h3{margin:0;color:#53564e;font:400 clamp(13px,1vw,15px)/1.48 var(--serif);letter-spacing:.006em}
.piece-action,.piece-return{display:inline-flex;align-items:center;justify-content:space-between;gap:17px;min-height:44px;padding:7px 0;background:none;color:#696b61;font:400 12px/1.4 var(--sans);letter-spacing:.015em;text-align:left}
.piece-action svg,.piece-send svg,.piece-return svg{flex:none;width:17px;height:17px;transition:transform .32s var(--ease)}
.collection-view:focus-visible .collection-preview{opacity:1}
@media(hover:hover){
 .piece-action:hover,.piece-return:hover{color:#363930}
 .piece-action:hover svg,.piece-send:hover svg,.piece-return:hover svg{transform:translateX(3px)}
 .collection-card:hover .collection-preview{opacity:0}
 .collection-card .collection-view:hover .collection-preview,.collection-card .collection-view:focus-visible .collection-preview{opacity:1}
}
.collection-endnote{max-width:40ch;font:300 14px/1.7 var(--sans);color:#66685f}
.artwork-acquisition{margin:clamp(24px,3vw,44px) 0 clamp(28px,3.5vw,52px)}
.artwork-acquisition .piece-action-featured,.piece-send{width:100%;min-height:50px;padding:14px 20px;border:1px solid #45483f;background:#45483f;color:#fbfaf6;font:400 14px/1.4 var(--sans);display:flex;align-items:center;justify-content:space-between;gap:24px;transition:background .25s}
.artwork-acquisition .piece-action-featured:is(:hover,:focus-visible),.piece-send:is(:hover,:focus-visible){background:#393c34;color:white}
.artwork-acquisition p{margin:12px 0 0;color:#6b6c63;font:300 13px/1.6 var(--sans)}
/* A warm paper letter and a single plate. No faux patina, oversized rules or promotional copy. */
.piece-dialog{--folio-ink:#393c34;--folio-muted:#66695e;--folio-line:#cecec2;--folio-paper:#faf9f5;width:min(800px,calc(100vw - 56px));max-width:100vw;max-height:calc(100dvh - 48px);margin:auto;padding:0;border:1px solid #d4d5c9;background:var(--folio-paper);color:var(--folio-ink);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 20px 80px #252a2224;font:400 14px/1.5 var(--sans)}
.piece-dialog[open]{animation:folio-enter .32s cubic-bezier(.22,.65,.3,1) both}
.piece-dialog::backdrop{background:rgb(35 39 32 / 36%);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.piece-dialog[open]::backdrop{animation:folio-veil .25s ease-out both}
@keyframes folio-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes folio-veil{from{opacity:0}to{opacity:1}}
.piece-dialog [hidden],.piece-dialog p:empty,.piece-dialog ul:empty{display:none!important}
.piece-dialog-bar{position:sticky;top:0;z-index:2;background:var(--folio-paper);display:flex;justify-content:space-between;align-items:center;gap:16px;padding:6px 17px 6px 26px;border-bottom:1px solid var(--folio-line)}
.piece-dialog-bar>span,.piece-kicker{color:var(--folio-muted);font:400 10px/1.5 var(--sans);letter-spacing:.13em;text-transform:uppercase}
.piece-dialog-bar i{font-style:normal;margin:0 6px;color:#898c80}
.piece-close,.piece-dialog li button{display:grid;place-items:center;min-height:44px;min-width:44px;padding:0}
.piece-dialog-body{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.5fr)}
.piece-plate{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:32px 18px;background:#f0efe8;text-align:center}
.piece-specimen{width:100%;height:clamp(120px,16vw,182px);display:grid;place-items:center}
.piece-specimen>.collection-object{width:90%;height:100%;max-height:182px;overflow:visible;filter:drop-shadow(1px 3px 2px #3c392823)}
.piece-plate-caption p{font:400 clamp(19px,2vw,24px)/1.22 var(--serif);letter-spacing:-.02em;text-wrap:balance}
.piece-plate-caption span{display:block;margin-top:7px;color:var(--folio-muted);font-size:11px}
.piece-letter{min-width:0;padding:clamp(25px,3.2vw,44px)}
.piece-letter h2{margin:0;color:var(--folio-ink);font:400 clamp(30px,3.4vw,44px)/1.12 var(--serif);letter-spacing:-.04em}
.piece-letter h2:focus{outline:none}
#piece-inquiry-intro,.piece-receipt>p:not(.piece-kicker){margin:10px 0 23px;color:var(--folio-muted);font:300 14px/1.6 var(--sans);text-wrap:pretty}
.piece-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.piece-fields label{display:block;min-width:0;color:#494c42;font:400 12px/1.45 var(--sans)}
.piece-dialog small{margin-inline-start:3px;color:var(--folio-muted);font:300 10px/1.5 var(--sans)}
.piece-fields :is(input,textarea){display:block;width:100%;max-width:100%;border:0;border-bottom:1px solid var(--folio-line);border-radius:0;background:transparent;padding:6px 0;min-height:36px;color:var(--folio-ink);font:300 14px/1.4 var(--sans);transition:border-color .2s;box-shadow:none}
.piece-fields :is(input,textarea)::placeholder{color:#74776c;opacity:1}
.piece-dialog .piece-fields :is(input,textarea):focus{outline:0;border-color:#737765;box-shadow:0 1px 0 #737765}
.piece-notes{grid-column:1/-1}
.piece-fields textarea{resize:vertical;min-height:47px}
.piece-attachments{margin:16px 0 0}
.piece-file-control{position:relative;display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 12px;border:1px dashed #c3c5b7;cursor:pointer;color:#4b4f43;font-size:12px}
.piece-file-control:is(:focus-within,.is-over){outline:1px solid #737765;outline-offset:2px}
.piece-file-control input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.piece-file-control small{margin-left:auto}
.piece-file-control svg{width:15px;height:15px}
#piece-file-hint,.piece-file-status,.piece-dispatch>p{margin:6px 0 0;color:var(--folio-muted);font:300 11px/1.5 var(--sans)}
.piece-dialog ul{list-style:none;margin:8px 0 0;padding:0}
.piece-dialog li{display:flex;align-items:center;gap:8px;min-height:38px;border-bottom:1px solid #dedfd5;color:#56594e;font-size:12px}
.piece-dialog li img{width:29px;height:29px;object-fit:cover}
.piece-dialog li span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.piece-dialog li button{margin-left:auto}
.piece-dialog li svg{width:13px;height:13px}
.piece-dialog .piece-form-error,.piece-dialog .piece-file-status{color:#80513e;overflow-wrap:anywhere}
.piece-form-error{margin:12px 0;font-size:13px}
.piece-dispatch{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}
.piece-dispatch>p{margin:0}
.piece-send{width:auto;min-width:146px;min-height:44px;font-size:13px;padding:10px 15px}
.piece-send:disabled{cursor:wait;opacity:.8}
.piece-receipt{min-height:245px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.piece-receipt .piece-kicker{margin:0 0 15px}
.piece-receipt span{overflow-wrap:anywhere}
.piece-return{border-bottom:1px solid var(--folio-line)}
@media(max-width:1000px){.collection-layout{--catalog-gap:clamp(32px,5vw,52px)}}
@media(max-width:640px){
 .piece-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);max-height:calc(100dvh - max(12px,env(safe-area-inset-top)) - max(12px,env(safe-area-inset-bottom)))}
 .piece-dialog-body{display:block}
 .piece-dialog-bar{padding:1px 9px 1px 18px}
 .piece-plate{flex-direction:row;justify-content:flex-start;gap:18px;padding:14px 20px;text-align:left}
 .piece-specimen{width:72px;height:52px;flex:none}
 .piece-specimen>.collection-object{max-height:52px}
 .piece-plate-caption p{font-size:20px}
 .piece-plate-caption span{margin-top:3px}
 .piece-letter{padding:20px}
 .piece-letter h2{font-size:31px}
 #piece-inquiry-intro{margin:6px 0 16px;font-size:13px}
 .piece-fields{gap:13px 14px}
 .piece-fields :is(input,textarea){min-height:41px;font-size:16px}
 .piece-fields input::placeholder,.piece-fields textarea::placeholder{font-size:13px}
 .piece-dispatch{margin-top:16px}
}
@media(max-width:600px){.collection-layout{--catalog-gap:24px;row-gap:clamp(54px,12vw,75px)}.collection-inner{width:85%}.collection-page .catalog-status{margin-bottom:36px}}
@media(max-width:380px){.piece-fields{grid-template-columns:minmax(0,1fr)}.piece-letter{padding:18px}.piece-dispatch{align-items:flex-start;flex-direction:column}}
@media(max-height:620px){.piece-dialog{max-height:calc(100dvh - 12px)}}
html.reduce-motion .piece-dialog,html.reduce-motion .piece-dialog::backdrop,html.reduce-motion :is(.piece-action,.piece-send,.piece-return) svg{animation:none!important;transition:none!important;transform:none!important}
@media(prefers-reduced-motion:reduce){.piece-dialog,.piece-dialog::backdrop,:is(.piece-action,.piece-send,.piece-return) svg{animation:none!important;transition:none!important;transform:none!important}}
