/* One quiet cinematic language: space, a frame, and a close-up. */
:root{--cut-duration:620ms;--cut-ease:cubic-bezier(.2,.65,.25,1)}
.topbar{min-height:64px;padding-right:32%;background:transparent}
.room-heading,.about-room,.beginning-room,.opening-meta,.archive-picks,.personal-interests,.feeling-footnote,.additional-work-heading{border:0}
.room-heading{padding-top:0}
.work-room,.archive-room{margin-top:clamp(100px,11vw,180px)}
.beginning-room{padding-top:0}
.personal-interests{padding-top:10px}
.feeling-footnote{padding-top:8px}
.archive-picks{justify-content:flex-start;gap:clamp(26px,5vw,80px);padding:0;margin-bottom:40px}
.archive-picks button{color:#999;transition:color .3s}
.archive-picks button[aria-pressed=true]{text-decoration:none;color:#141414}
.archive-picks button[aria-pressed=true]>span{color:#141414}
.archive-stage{opacity:1;translate:0 0;transition:opacity 240ms ease,translate var(--cut-duration) var(--cut-ease)}
.archive-stage.is-changing{opacity:0;translate:0 6px}
.personal-archive .archive-study{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:10%;align-items:start;min-height:560px}
.personal-archive .archive-artboard{width:100%;max-width:640px;margin:0}
.personal-archive .archive-frame{display:block;position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:#f5f5f5;isolation:isolate}
.personal-archive .archive-frame img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;filter:grayscale(1);transform:none;transition:transform 1.2s var(--cut-ease)}
.personal-archive .archive-frame:hover img{transform:scale(1.025)}
.personal-archive .archive-artboard figcaption{display:flex;justify-content:space-between;gap:16px;text-align:left;margin-top:16px;min-height:30px;font-size:9px;letter-spacing:.025em;color:#888}
.personal-archive .archive-artboard figcaption>span:last-child{white-space:nowrap}
.personal-archive .archive-study-copy{padding-top:12px}
.personal-archive .archive-study-copy>p{max-width:440px}
/* Work and photograph close-ups use the same fullscreen cut. */
#work-dialog,#image-dialog{inset:0;margin:0;width:100%;height:100dvh;max-width:none;max-height:none;border:0;background:#fff;color:#141414;overscroll-behavior:contain}
#work-dialog::backdrop,#image-dialog::backdrop{background:#fff;backdrop-filter:none}
#work-dialog .dialog-close{position:sticky;top:0;padding:24px clamp(24px,4vw,64px);z-index:4}
#work-dialog .dialog-content{max-width:1250px;margin:auto;padding:25px 7% 70px}
#work-dialog .dialog-navigation{border:0;max-width:1250px;margin:auto;padding:30px 7% 50px}
#work-dialog[open] .project-detail,#scene-dialog[open] nav,#image-dialog[open] .image-view-study{animation:cinematic-cut var(--cut-duration) var(--cut-ease) both}
@keyframes cinematic-cut{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
#image-dialog{padding:75px 7% 30px;overflow:auto}
#image-dialog[open]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px}
.image-view-close{position:absolute;top:25px;right:4%;font-size:12px;padding:10px}
.image-view-study{width:min(900px,100%,calc(68dvh * 4 / 3));margin:0}
.image-view-study>img{width:100%;aspect-ratio:4/3;height:auto;object-fit:contain;filter:grayscale(1)}
.image-view-study figcaption{font-size:10px;line-height:1.6;color:#777;margin-top:18px}
.image-view-controls{display:flex;justify-content:space-between;gap:30px;width:min(900px,100%,calc(68dvh * 4 / 3));font-size:11px;color:#777}
.image-view-controls button{padding:10px 0;color:#141414}
.image-view-controls>span{align-self:center}
body.image-view-open{overflow:hidden}
body.image-view-open .scene-index-trigger,body.image-view-open #art-cursor{visibility:hidden}
body.image-view-open,body.image-view-open *{cursor:auto!important}
body.image-view-open button{cursor:pointer!important}
/* An end card, with social details revealed only on request. */
.closing{min-height:72dvh;display:flex;flex-direction:column;justify-content:space-between;padding:65px 7% 26px}
.closing-title{margin:60px 0 55px;max-width:1050px}
.footer-invitation{display:flex;align-items:flex-start;gap:40px;justify-content:space-between;max-width:1050px;width:100%;margin-bottom:65px}
.contact-address{font-size:clamp(17px,2vw,26px);letter-spacing:-.025em}
.footer-elsewhere{min-width:170px;max-width:500px}
.footer-elsewhere summary{display:flex;align-items:center;justify-content:space-between;gap:50px;list-style:none;cursor:pointer;font-size:13px;color:#ccc;padding:8px 0}
.footer-elsewhere summary::-webkit-details-marker{display:none}
.footer-elsewhere summary span{display:inline-block;transition:rotate .3s;font-size:19px;line-height:1}
.footer-elsewhere[open] summary span{rotate:45deg}
.footer-elsewhere summary:focus-visible{outline:1px solid currentColor;outline-offset:6px}
.footer-elsewhere .footer-socials{display:grid;grid-template-columns:1fr;gap:20px;margin:23px 0 0;padding:0;border:0}
.footer-elsewhere .footer-socials>a,.footer-elsewhere .footer-socials>span,.footer-elsewhere .footer-socials>button{display:flex;flex-direction:row;justify-content:space-between;align-items:baseline;gap:22px;font-size:11px}
.footer-elsewhere .footer-socials .tiny{font-size:10px;letter-spacing:0;min-width:72px}
.footer-elsewhere[open] .footer-socials{animation:cinematic-cut var(--cut-duration) var(--cut-ease) both}
.footer-meta{border:0;padding-top:15px;display:flex;justify-content:space-between;gap:25px;font-size:9px}
.footer-meta button{font-size:9px}
@media(max-width:900px){.personal-archive .archive-study{gap:7%;min-height:580px}.personal-archive .archive-study-copy{padding:0}.personal-archive .archive-artboard figcaption{flex-direction:column;gap:4px}.personal-archive .archive-study-copy>p{font-size:13px}.footer-invitation{gap:30px}}
@media(max-width:700px){
 .topbar{padding:20px 6%;min-height:60px}.topbar .site-label{display:block}
 .work-room,.archive-room{margin-top:90px}.archive-picks{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:15px!important;flex-wrap:nowrap;margin:28px 0 30px!important}
 .archive-picks button{font-size:10px!important;display:block;text-align:left;line-height:1.5;flex:1}.archive-picks button>span{display:block;margin-bottom:7px}
 .personal-archive .archive-study{display:block;min-height:0}.personal-archive .archive-artboard{max-width:none}.personal-archive .archive-artboard figcaption{flex-direction:row;min-height:40px;font-size:8px;gap:20px}
 .personal-archive .archive-study-copy{margin:30px 0 0;padding:0}.personal-archive .archive-study-copy>p{font-size:13px}
 #image-dialog{padding:75px 6% 35px;gap:18px}.image-view-study,.image-view-controls{width:min(100%,calc(68dvh * 4 / 3))}.image-view-close{right:4%;top:18px}.image-view-controls{font-size:10px}
 #work-dialog .dialog-close{padding:20px 6%}.closing{min-height:65dvh;padding:50px 7% 24px}.closing-title{margin:45px 0}.footer-invitation{display:block;margin-bottom:50px}.contact-address{font-size:22px}.footer-elsewhere{max-width:360px;margin-top:28px}.footer-elsewhere summary{justify-content:flex-start;gap:20px}.footer-elsewhere .footer-socials{margin-top:20px}.footer-meta>*{text-align:left!important}
}
@media(prefers-reduced-motion:reduce){.archive-stage,.archive-frame img,.footer-elsewhere summary span{transition:none!important}.archive-frame:hover img{transform:none!important}}
.motion-paused .archive-stage,.motion-paused .archive-frame img,.motion-paused .footer-elsewhere summary span{transition:none!important}
@media print{#image-dialog,.footer-elsewhere{display:none!important}.archive-stage{opacity:1!important;translate:none!important}}

@media(max-height:540px){#image-dialog[open]{justify-content:flex-start;padding:52px 5% 20px;gap:8px}.image-view-study,.image-view-controls{width:min(700px,100%,calc((100dvh - 165px) * 4 / 3))}.image-view-study figcaption{margin-top:8px;font-size:8px}.image-view-controls{font-size:10px}.image-view-controls button{padding:6px 0}.image-view-close{top:10px}}
.release-empty,.release-entry{border:0}
/* A quiet opaque backing keeps the single menu readable while content passes behind it. */
.scene-index-trigger{background:rgba(255,255,255,.97);mix-blend-mode:normal;color:#141414}
.scene-index-trigger [data-scene-current]{color:#141414}
.scene-index-trigger-label{color:#727272}
@media(max-width:600px){.scene-index-trigger [data-scene-current]{display:none}.scene-index-trigger{max-width:100px}}

/* Personal details: open space, a quiet disco, and uncropped ensemble. */
.off-script{border:0;margin-top:42px;padding-top:0;gap:28px 24px}
.personal-archive .archive-artboard{margin-inline:auto;align-self:center}
#archive-accept .archive-frame img{object-fit:contain}
@media(prefers-reduced-motion:reduce){.disco-note.is-dancing .disco-ball{animation:none}}
body.motion-paused .disco-ball{animation-play-state:paused!important}

.release-letter{width:min(820px,94vw);max-height:90dvh;box-sizing:border-box;border:0;padding:60px clamp(24px,7vw,85px);color:#161616;background:#fff;overscroll-behavior:contain}.release-letter::backdrop{background:rgba(0,0,0,.44)}.letter-close{display:block;margin:0 0 35px auto;font-size:12px}.letter-title{font:400 clamp(32px,4vw,52px)/1.1 var(--sans);letter-spacing:-.04em;margin:20px 0 38px}.release-letter .release-body{max-width:100%;font-size:16px;line-height:1.85}.release-letter .release-body p{margin:0 0 24px}.letter-signature{margin-top:42px}.letter-signature p{font-size:14px}.letter-signature img{width:210px;max-width:70%;height:auto;margin-top:20px}.letter-open{overflow:hidden}.letter-open #art-cursor{visibility:hidden}.letter-open,.letter-open *{cursor:auto!important}.release-toggle{cursor:pointer;text-decoration:underline;text-underline-offset:5px}.release-letter[open]{animation:cinematic-cut .6s var(--cut-ease)}@media(prefers-reduced-motion:reduce){.release-letter[open]{animation:none}}

/* A persistent, quiet return point paired with the existing scene index. */
.topbar{position:fixed;top:16px;left:4%;z-index:70;min-height:44px;padding:0;display:flex;align-items:center;background:transparent;border:0}
.site-label{display:flex!important;align-items:center;min-height:44px;padding:0 12px;transition:background .3s,box-shadow .3s;border-radius:24px}
.site-monogram{display:none;width:36px;height:36px;object-fit:contain;border-radius:50%}
.header-floating .site-name{display:none}.header-floating .site-monogram{display:block}
.header-floating .site-label{padding:4px;background:rgba(255,255,255,.92);box-shadow:0 2px 16px #0000000c;backdrop-filter:blur(10px)}
.scene-index-trigger{top:16px!important;min-height:44px;padding:10px 16px!important;border-radius:24px;backdrop-filter:blur(10px)}
.header-floating .scene-index-trigger{box-shadow:0 2px 16px #0000000c}
body.entry-open .topbar,body:has(dialog[open]) .topbar{visibility:hidden;pointer-events:none}
@media(max-width:600px){.topbar{left:16px;top:14px}.scene-index-trigger{top:14px!important}}

/* Full-width footer background with the existing content alignment. */
.closing{box-shadow:0 0 0 100vmax #111;clip-path:inset(0 -100vmax);border-radius:0}

.header-floating .site-label{background:transparent;box-shadow:none;backdrop-filter:none}
