/* The artwork is one continuous surface. Hit areas scale with the image. */
body[data-archive-view="desk"]{background:#21170f;height:100dvh;overflow:hidden;display:flex;flex-direction:column}
body[data-archive-view="desk"] .language-bar{flex-shrink:0}
body[data-archive-view="desk"] #memberApp{display:flex;flex-direction:column;flex:1;min-height:0}
body[data-archive-view="desk"] .portal-header{flex-shrink:0}
body[data-archive-view="desk"] .member-welcome,body[data-archive-view="desk"] .portal-footer{display:none}
body[data-archive-view="desk"] .member-main{max-width:none;width:100%;padding:0;margin:0;flex:1;min-height:0}
.desk-view{position:relative;background:#21170f;color:#f4e5c8;min-height:0;height:100%;overflow:hidden}
.desk-stage{position:relative;width:100%;height:100%;overflow:auto;background:#24221d;container-type:size;scrollbar-width:none;overscroll-behavior:contain;touch-action:pan-x pan-y}
.desk-canvas{position:relative;width:100%;height:100%;min-width:100%;min-height:100%}
.desk-stage::-webkit-scrollbar{display:none}
.desk-scene{position:absolute;left:50%;top:50%;width:100%;aspect-ratio:1672/941;transform:translate(-50%,-50%);isolation:isolate;animation:desk-arrive .7s ease-out both}
.desk-art{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none;pointer-events:none}
.desk-stage:focus-visible{outline:1px solid #e4c992;outline-offset:-3px}
.desk-stage.is-pannable{cursor:grab}.desk-stage.is-dragging,.desk-stage.is-dragging .desk-object{cursor:grabbing}.desk-stage.is-dragging .desk-label{display:none}
.desk-object{position:absolute;display:block;color:#f8ebd0;text-decoration:none;isolation:isolate;-webkit-tap-highlight-color:transparent;touch-action:manipulation;outline:0}
.desk-object::before{content:"";position:absolute;inset:0;border:1px solid #f9df9c00;border-radius:6px;background:#fbe0a400;transition:background .25s,border-color .25s,box-shadow .25s;pointer-events:none}
.desk-object{cursor:pointer}.desk-object:focus-visible::before{outline:2px solid #f8e2aa;outline-offset:-3px;background:#ffe4a20a}

.desk-label{position:absolute;left:var(--pin-x,50%);top:var(--pin-y,50%);min-width:205px;max-width:260px;padding:12px 38px 12px 15px;transform:translate(-50%,24px);opacity:0;visibility:hidden;background:#f4edddf5;border:1px solid #cdb88d;border-radius:3px;box-shadow:0 12px 34px #140c0660;backdrop-filter:blur(10px);pointer-events:none;transition:opacity .2s,transform .2s;z-index:3}
.desk-label strong{display:block;font:17px/1.3 Georgia,serif;color:#1b3235}.desk-label small{display:block;font:13px/1.4 system-ui;color:#5e625a;margin-top:5px}.desk-label>span{position:absolute;right:13px;top:14px;font-size:18px;color:#71623f}
.desk-object:hover,.desk-object:focus-visible{z-index:6}.desk-object:hover .desk-label,.desk-object:focus-visible .desk-label{opacity:1;visibility:visible;transform:translate(-50%,20px)}

.desk-object-folder{left:37%;top:28%;width:23%;height:39%;--pin-x:50%;--pin-y:65%}
.desk-object-paper{left:16%;top:56%;width:21%;height:27%;--pin-y:23%}
.desk-object-album{left:41%;top:7%;width:23%;height:20%;--pin-y:46%}
.desk-object-gluckstadt{left:62%;top:33%;width:15%;height:18%;--pin-y:51%}
.desk-object-curacao{left:20%;top:33%;width:16%;height:19%;--pin-y:45%}
.desk-object-ledger{left:49%;top:72%;width:22%;height:20%;--pin-y:38%}
.desk-object-letter{left:66%;top:56%;width:14%;height:17%;--pin-x:38%;--pin-y:28%}
.desk-object-ledger .desk-label,.desk-object-letter .desk-label{top:auto;bottom:62%;transform:translate(-50%,0)}
.desk-object-ledger:hover .desk-label,.desk-object-ledger:focus-visible .desk-label,.desk-object-letter:hover .desk-label,.desk-object-letter:focus-visible .desk-label{transform:translate(-50%,-4px)}
.desk-bottom{position:absolute;right:24px;bottom:20px;z-index:12;display:flex;align-items:flex-end;gap:18px;pointer-events:none;max-width:calc(100% - 48px)}
.desk-menu{position:relative;pointer-events:auto;color:#f6e7cc;font:14px/1.5 system-ui}.desk-menu summary{list-style:none;display:flex;align-items:center;gap:24px;padding:12px 17px;min-height:46px;background:#132c31cf;border:1px solid #e3d0a44a;border-radius:3px;cursor:pointer;box-shadow:0 3px 20px #170d0740;backdrop-filter:blur(8px)}.desk-menu summary::-webkit-details-marker{display:none}.desk-menu summary>span{font-size:19px}.desk-menu[open] summary>span{transform:rotate(45deg)}.desk-menu summary:focus-visible{outline:3px solid #fff;outline-offset:3px}
.desk-menu-content{position:absolute;bottom:calc(100% + 10px);right:0;width:min(330px,calc(100vw - 48px));padding:12px 18px;background:#142d35f5;border:1px solid #d8bd8470;border-radius:5px;box-shadow:0 8px 30px #100a0860;max-height:calc(100dvh - 230px);overflow:auto;backdrop-filter:blur(12px)}
.desk-index{display:grid;grid-template-columns:1fr;gap:0}.desk-index a{display:flex;align-items:center;gap:12px;color:#eee0c9;text-decoration:none;font:14px/1.4 system-ui;min-height:44px;border-bottom:1px solid #e9d1a31c}.desk-index a:hover,.desk-index a:focus-visible{color:#ffe1a0;text-decoration:underline;text-underline-offset:5px}.desk-index-arrow{display:block;margin-left:auto}.desk-find{display:block;color:#c4b69e;margin-top:14px;font:13px/1.5 system-ui;text-underline-offset:4px}.desk-swipe{display:none}
.desk-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes desk-arrive{from{opacity:0}to{opacity:1}}
@media(min-width:1001px){.portal-header{gap:14px}.portal-header nav>button{padding-inline:10px}.portal-brand small{font-size:10px}}
@media(max-width:1000px){.portal-header .section-navigation{grid-template-columns:repeat(6,minmax(0,1fr))}.portal-header .section-navigation>button{min-height:56px}body[data-archive-view="desk"] #memberApp{padding-bottom:calc(73px + env(safe-area-inset-bottom,0px))}.desk-bottom{right:16px;bottom:16px;max-width:calc(100% - 32px)}.desk-label{display:none}.desk-object{min-height:44px}.desk-object::before{display:none}.desk-object:focus-visible{outline:3px solid #ffe1a0;outline-offset:-3px}.desk-swipe{display:block;position:absolute;bottom:calc(100% + 9px);right:0;white-space:nowrap;margin:0;padding:5px 10px;background:#142d35e8;border-radius:3px;font:italic 14px/1.4 Georgia,serif;color:#fff0d1;text-shadow:0 1px 5px #000,0 1px 12px #000}.desk-menu-content{width:min(330px,calc(100vw - 32px))}}
@media(prefers-reduced-motion:reduce){.desk-scene{animation:none}.desk-object::before,.desk-label{transition:none}}

/* A single restrained masthead leaves the artwork room to breathe. */
body[data-archive-view] .portal-header{position:relative;top:0;padding:12px 28px;gap:16px;background:#102a2e;border-bottom:1px solid #d8bd8438;box-shadow:0 4px 18px #140d101c;min-height:76px}
body[data-archive-view] .portal-brand>span{font-size:21px;letter-spacing:.16em}
body[data-archive-view] .portal-brand img{width:35px;height:44px}
body[data-archive-view] .portal-brand small{font-size:9px;letter-spacing:.15em}
body[data-archive-view] .section-navigation{gap:2px}
body[data-archive-view] .section-navigation>button{padding:10px 9px;background:transparent;border-radius:0}
body[data-archive-view] .section-navigation>button[aria-current]{color:#e4c992;background:transparent;box-shadow:inset 0 -1px #c5a263}
body[data-archive-view] .member-actions{gap:10px;padding-left:14px}
body[data-archive-view] .language-bar{position:static;min-height:0;background:none;border:0;padding:0;gap:0;flex-shrink:0;z-index:auto}
body[data-archive-view] .language-bar label{display:none}
body[data-archive-view] .language-bar select{width:113px;max-width:none;min-height:38px;margin:0;color:#e8e1d0;background:#193439;border:1px solid #d8bd8433;border-radius:3px;padding:7px;font-size:13px}
body[data-archive-view] .language-bar option{color:#e8e1d0;background:#193439}
@media(max-width:1200px) and (min-width:1001px){body[data-archive-view] .member-button>span:last-child{display:none}body[data-archive-view] .portal-header{padding-inline:20px;gap:12px}}
@media(max-width:1000px){body[data-archive-view] .portal-header{padding:10px 16px;gap:10px;min-height:66px}body[data-archive-view] .portal-brand>span{font-size:17px}body[data-archive-view] .portal-brand img{width:27px;height:36px}body[data-archive-view] .member-actions{padding:0;gap:4px}body[data-archive-view] .signout{font-size:12px;padding:6px}body[data-archive-view] .language-bar select{width:99px;font-size:12px;padding:6px;min-height:38px}body[data-archive-view] .small-avatar{width:30px;height:30px}body[data-archive-view] .section-navigation>button{padding:7px 2px}}
@media(max-width:370px){body[data-archive-view] .portal-header{gap:6px;padding-inline:10px}body[data-archive-view] .portal-brand{gap:5px}body[data-archive-view] .portal-brand>span{font-size:15px}body[data-archive-view] .language-bar select{width:90px}}

/* Quiet controls stay outside the artwork and never scale with it. */
.desk-tools{position:absolute;left:24px;bottom:20px;z-index:13;display:flex;align-items:center;padding:4px;background:#122b30ed;border:1px solid #dac59a66;border-radius:4px;box-shadow:0 4px 24px #0a080744;backdrop-filter:blur(12px)}
.desk-tools button{appearance:none;border:0;background:none;color:#f4e7cf;min-width:42px;min-height:42px;padding:8px 14px;font:14px/1.3 system-ui;cursor:pointer;border-radius:2px;touch-action:manipulation}
.desk-tools button[data-desk-zoom]{padding:6px;font:24px/1 Georgia,serif}
.desk-tools button:hover{background:#d9bb8022}.desk-tools button:focus-visible{outline:2px solid #e4c992;outline-offset:-2px}.desk-tools button:disabled{opacity:.35;cursor:default}
.desk-swipe{display:block;font:italic 14px/1.4 Georgia,serif;color:#fff0d1;text-shadow:0 1px 6px #000;margin:0 0 12px;pointer-events:none}
.desk-bottom{flex-direction:column;align-items:flex-end;gap:0}.desk-swipe{order:-1}
@media(max-width:1000px){.desk-tools{left:12px;bottom:12px}.desk-tools button{padding:8px;min-width:36px;min-height:42px}.desk-bottom{right:12px;bottom:12px}.desk-menu summary{font-size:13px;min-height:52px;padding:10px 12px;gap:10px}.desk-swipe{position:static;align-self:flex-end;font-size:13px;margin-bottom:8px;background:#142d35dd}.desk-menu-content{right:0;max-height:calc(100dvh - 225px)}}

.desk-object-instruments{left:10%;top:6%;width:21%;height:21%;--pin-y:76%}
.desk-object-key{left:81%;top:28%;width:7%;height:18%;--pin-x:-40%;--pin-y:65%}
@media(max-width:370px){.desk-tools button{font-size:12px;min-width:34px;padding:6px}.desk-menu summary{font-size:12px;padding-inline:9px;gap:6px}.desk-tools{left:8px}.desk-bottom{right:8px}}

/* Quiet, physical movement: the real destination is revealed underneath its document. */
.desk-is-opening{overflow:hidden!important}
.desk-is-opening .desk-label{display:none!important}
.desk-transition{position:fixed;inset:0;z-index:10000;overflow:hidden;pointer-events:auto;perspective:1600px}
.desk-transition-backdrop{position:absolute;inset:0;background:transparent;will-change:clip-path,opacity}
.desk-transition-viewport{position:absolute;overflow:hidden;background:#24221d}
.desk-transition-art{position:absolute;max-width:none;user-select:none;pointer-events:none}
.desk-transition-shade{position:absolute;background:linear-gradient(120deg,#17181150,#12140ddb);opacity:0}
.desk-flight{position:absolute;transform-origin:center;transform-style:preserve-3d;perspective:1400px;will-change:transform,filter}
.desk-flight-cover{position:absolute;inset:0;transform-origin:left center;transform-style:preserve-3d;will-change:transform,opacity}
.desk-flight-paper .desk-flight-cover{transform-origin:center top}
.desk-flight-face{position:absolute;inset:0;background-repeat:no-repeat;transform-origin:0 0;backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform}
@view-transition{navigation:auto}
::view-transition-old(root){animation-duration:.3s}
::view-transition-new(root){animation-duration:.3s}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}

/* The same navigation belongs to every page of the member archive. */
body[data-archive-view] .portal-brand{color:#f4e7cf}
body[data-archive-view] .portal-brand small{color:#abbbb2}
body[data-archive-view] .portal-header nav>button,body[data-archive-view] .member-button{color:#d6ded5}
body[data-archive-view] .signout{color:#b7c4ba}
body[data-archive-view] .member-actions{border-left-color:#d8bd8433}
@media(max-width:1000px){body[data-archive-view] .section-navigation{background:#102a2e;border-color:#d8bd8438}}

body[data-archive-view]:not([data-archive-view="desk"]) .portal-header{position:sticky;top:0}

.desk-destination-sheet{position:absolute;background:linear-gradient(110deg,#dfd0af,#f6ecda 15%,#e9ddc3);box-shadow:inset 0 0 0 1px #c2ac7e;border-radius:2px}

/* The marks belong to the wood, so they stay registered during every camera move. */
.desk-tour[hidden]{display:none}.desk-tour{--tour-progress:0;position:absolute;top:22px;left:50%;transform:translateX(-50%);z-index:14;display:flex;align-items:center;gap:2px;max-width:calc(100% - 32px);padding:5px;background:#10292eef;border:1px solid #d8bd8466;border-radius:5px;box-shadow:0 10px 35px #100b0944;backdrop-filter:blur(16px);color:#f4e7cf;overflow:hidden;animation:desk-tour-arrive .35s ease-out both}
.desk-tour::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:calc(var(--tour-progress)*100%);background:#e4c992;pointer-events:none}
.desk-tour button{appearance:none;background:transparent;color:inherit;border:0;min-width:44px;min-height:44px;border-radius:2px;font:24px/1 Georgia,serif;cursor:pointer;touch-action:manipulation}
.desk-tour button:hover{background:#e4c99216}.desk-tour button:focus-visible{outline:2px solid #e4c992;outline-offset:-2px}.desk-tour button:disabled{opacity:.28;cursor:default}
.desk-tour-caption{width:200px;padding:5px 10px;min-width:0}.desk-tour-caption small{display:block;font:9px/1.4 system-ui;letter-spacing:.2em;color:#bda881;margin-bottom:3px}.desk-tour-caption strong{display:block;font:17px/1.3 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:400}
.desk-tour button.desk-tour-open{font:12px/1.3 system-ui;padding:10px 15px;border-left:1px solid #d8bd8433;margin-left:4px}
.desk-tools .desk-tour-trigger{border-left:1px solid #d8bd8433;margin-left:3px;color:#e4c992}
.desk-tools .desk-tour-trigger[aria-pressed="true"]{display:none}
.desk-tour-selected::before{border-color:#ead4a630;background:#ffe4a207;box-shadow:0 0 35px #f1d8a60c}
.desk-is-opening .desk-tour{visibility:hidden}
.desk-flight-gleam{position:absolute;inset:-15%;background:linear-gradient(105deg,transparent 30%,#fff6d94d 49%,transparent 66%);pointer-events:none;opacity:0}
@keyframes desk-tour-arrive{from{opacity:0;translate:0 -5px}to{opacity:1;translate:0 0}}
@media(max-width:1000px){.desk-tour{top:12px;max-width:calc(100% - 24px)}.desk-tour-caption{width:135px;padding-inline:5px}.desk-tour-caption strong{font-size:15px}.desk-tour button{min-width:44px}.desk-tour button.desk-tour-open{padding-inline:10px}.desk-tools .desk-tour-trigger{position:absolute;left:-1px;bottom:calc(100% + 8px);margin:0;border:1px solid #d8bd8455;background:#10292eed;min-width:100px;min-height:40px;box-shadow:0 4px 24px #0a080744}.desk-scroll-tip{display:none}}
@media(prefers-reduced-motion:reduce){.desk-tour{animation:none}}

/* An invitation to pick up the real document, clipped to its photographed edges. */
.desk-invitation{position:absolute;z-index:5;pointer-events:none;opacity:0;transform-origin:50% 55%;transform:perspective(1200px) translateY(0) rotateX(0) rotateY(0) scale(1);filter:drop-shadow(0 0 0 #100b0000);transition:opacity 180ms ease,transform 420ms cubic-bezier(.2,.8,.2,1),filter 420ms ease}
.desk-invitation-face{position:absolute;inset:0;background-image:var(--invite-art);background-repeat:no-repeat;overflow:hidden;filter:brightness(1);transition:filter 420ms ease}
.desk-invitation-shine{position:absolute;inset:-30%;pointer-events:none;background:linear-gradient(110deg,transparent 36%,#fff4d43b 49%,transparent 63%);opacity:0;transform:translateX(-65%)}
.desk-invitation.is-inviting{opacity:1;transform:perspective(1200px) translateY(-3px) rotateX(var(--invite-rx,0deg)) rotateY(var(--invite-ry,0deg)) scale(1.012);filter:drop-shadow(1px 7px 7px #100b0047)}
.desk-invitation.is-inviting .desk-invitation-face{filter:brightness(1.055)}
.desk-invitation.is-inviting .desk-invitation-shine{animation:desk-invitation-light 780ms cubic-bezier(.2,.7,.3,1) 90ms both}
.desk-object-metal::after{content:"";position:absolute;inset:-3%;pointer-events:none;background:radial-gradient(ellipse at 50% 48%,#ffe6a738,transparent 66%);border-radius:50%;opacity:0;transform:scale(.94);transition:opacity 300ms ease,transform 500ms ease}
.desk-object-metal.desk-object-inviting::after{opacity:1;transform:scale(1.04);animation:desk-metal-catchlight 850ms ease-out both}
.desk-stage.is-dragging .desk-invitation,.desk-stage.is-touring .desk-invitation,.desk-is-opening .desk-invitation{opacity:0;transition:none}
.desk-stage.is-dragging .desk-object::after,.desk-is-opening .desk-object::after{opacity:0!important}
@keyframes desk-invitation-light{0%{opacity:0;transform:translateX(-65%)}25%{opacity:1}100%{opacity:0;transform:translateX(65%)}}
@keyframes desk-metal-catchlight{0%{opacity:0;transform:scale(.94)}45%{opacity:.85}100%{opacity:1;transform:scale(1.04)}}
@media(prefers-reduced-motion:reduce){.desk-invitation,.desk-invitation-face,.desk-object-metal::after{transition:none}.desk-invitation.is-inviting{transform:none;filter:none}.desk-invitation.is-inviting .desk-invitation-shine{animation:none;display:none}.desk-object-metal.desk-object-inviting::after{animation:none;transform:none}}
