@font-face{font-family:GallerySerif;src:local('Baskerville')}*{box-sizing:border-box}html{height:100%;background:#f3f1ea}body{margin:0;min-height:100svh;display:flex;flex-direction:column;color:#3b5147;background:radial-gradient(ellipse at 50% 44%,#faf8ef 0,#f2f1e9 62%,#eeeee5 100%);font:12px Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #9d7b64;outline-offset:5px}button:disabled{opacity:.35;cursor:default}button:hover,a:hover{color:#163f30}.masthead{height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 45px;position:relative;z-index:2}.wordmark{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:3px;font-weight:500}.wordmark img{width:29px;height:29px;opacity:.8}.pavilion{position:absolute;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:2.8px;color:#8b968a}.masthead nav{display:flex;align-items:center;gap:23px}.studio-link{font-size:10px;color:#788674;letter-spacing:.5px;display:flex;gap:12px}.icon-button{width:38px;height:38px;display:inline-flex;justify-content:center;align-items:center;font-size:25px;border-radius:50%;color:#7f8d7b;transition:background .25s}.icon-button:hover{background:#dce2d260}.icon-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}.exhibition{position:relative;flex:1;display:flex;flex-direction:column;min-height:530px;height:calc(100svh - 145px);max-height:1100px}.object-space{flex:1;position:relative;min-height:350px}#tile-3d{position:absolute;inset:0;max-width:1150px;margin:0 auto;animation:arrive 1.2s ease both}#tile-3d canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none;outline-offset:-7px}#tile-3d canvas.dragging{cursor:grabbing}#tile-3d canvas:focus-visible{outline:1px solid #9aa98f;outline-offset:-12px}.gesture-hint{position:absolute;bottom:4px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:1px;color:#929b8d;pointer-events:none;transition:opacity .8s}.gesture-hint.quiet{opacity:0}.artwork-caption{text-align:center;min-height:126px;padding:17px 20px 18px;position:relative;z-index:1;width:fit-content;max-width:100%;margin:0 auto}.caption-line{display:flex;align-items:center;justify-content:center;gap:25px}.identity{min-width:220px}.edition{display:block;font-size:8px;letter-spacing:2px;color:#939c8d;font-variant-numeric:tabular-nums}h1{font:normal 30px/1.15 GallerySerif,'Iowan Old Style',Georgia,serif;letter-spacing:-.5px;margin:8px 0 0}.arrow{width:38px;height:38px;border-radius:50%;font-size:20px;color:#82917b;transition:transform .25s,background .25s}.arrow:hover{background:#dce2d250}.arrow:active{transform:scale(.9)}.swatches{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:16px}.swatch{padding:4px;width:24px;height:24px;border:1px solid transparent;border-radius:50%;transition:transform .25s,border-color .25s}.swatch span{display:block;width:100%;height:100%;border-radius:50%;background:var(--colour);box-shadow:inset 0 0 0 1px #64755c16}.swatch[aria-pressed=true]{border-color:#84967d}.swatch:hover{transform:translateY(-3px)}.unfold-corner{position:absolute;bottom:34px;left:48px;display:flex;align-items:center;gap:17px}.unfold{display:flex;align-items:center;gap:8px;font-size:10px;color:#87937f;padding:10px 0}.unfold svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1}.layer-marks{display:flex;gap:4px}.layer-marks i{width:14px;height:2px;background:#d6dccf;transition:background .6s}.layer-marks i.active{background:#8b9e80}.motion-corner{position:absolute;right:46px;bottom:29px}.motion-button{color:#9aa38f}.gallery-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;height:51px;padding:0 48px;font-size:8px;letter-spacing:.4px;color:#a0a795}.gallery-footer button{font-size:9px;display:flex;gap:10px;color:#8e9986;padding:8px 0}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}dialog{border:1px solid #d6ddce;border-radius:5px;background:#f8f7f0;color:#3b5147;padding:30px;width:min(940px,calc(100% - 48px));max-height:85svh;box-shadow:0 25px 100px #2a493220;overscroll-behavior:contain}dialog::backdrop{background:#33443745;backdrop-filter:blur(12px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.eyebrow{font-size:8px;letter-spacing:2.3px;color:#8c9984;margin:0 0 9px}h2{font:normal 38px/1.1 GallerySerif,Georgia,serif;letter-spacing:-1px;margin:0}.dialog-actions{display:flex;gap:12px}.collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px}.collection-card{padding:0;text-align:left}.collection-card .mini-tile{display:block;padding:12px;background:#e9ecdf;transition:background .25s;aspect-ratio:1}.collection-card svg{display:block;width:100%;height:100%;filter:drop-shadow(1px 4px 3px #263d2620)}.collection-card:hover .mini-tile{background:#dce3d2}.collection-card>span:last-child{display:block;font-size:10px;margin-top:10px;color:#7b8b70}.collection-card[aria-pressed=true] .mini-tile{outline:1px solid #94a789;outline-offset:3px}.about-dialog{max-width:540px;padding:33px 38px}.about-dialog h2{font-size:43px;line-height:1.1;margin:18px 0 25px}.about-dialog em{font-weight:normal;color:#879a7b}.about-dialog p{font-size:12px;line-height:1.9;color:#79866f}.about-actions{display:flex;gap:25px;border-top:1px solid #dce2d4;margin-top:25px;padding-top:18px;font-size:11px}.about-actions button{padding:0}.about-dialog details{margin-top:30px;font-size:10px;color:#8e9985}.about-dialog summary{cursor:pointer}.about-dialog details a{display:block;margin-top:10px;text-decoration:underline;text-underline-offset:3px}.about-dialog details p{font-size:10px}.three-fallback{position:absolute;inset:25%;text-align:center;display:flex;flex-direction:column;justify-content:center;gap:20px;line-height:1.8}.three-fallback button{padding:12px;background:#e2e9d9}.is-flat{display:flex;align-items:center;justify-content:center;padding:20px}.is-flat>svg{height:90%;max-width:90%;filter:drop-shadow(0 20px 17px #30492822)}#toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,15px);padding:12px 20px;border-radius:4px;background:#3b5147;color:#faf8ee;font-size:11px;opacity:0;pointer-events:none;z-index:10;transition:.3s}#toast.show{opacity:1;transform:translate(-50%,0)}@keyframes arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(min-height:900px){.artwork-caption{padding-bottom:35px;min-height:160px}.unfold-corner{bottom:50px}.motion-corner{bottom:45px}}
@media(max-width:760px){.masthead{height:78px;padding:0 24px}.wordmark{font-size:9px;letter-spacing:2.3px;gap:9px}.wordmark img{width:25px;height:25px}.pavilion{display:none}.masthead nav{gap:14px}.studio-link{font-size:9px;gap:7px}.exhibition{height:calc(100svh - 124px);min-height:540px}.object-space{min-height:320px}.artwork-caption{min-height:150px;padding-top:12px;padding-bottom:40px}.identity{min-width:195px}.caption-line{gap:10px}h1{font-size:29px}.swatches{gap:9px}.swatch{width:25px;height:25px}.unfold-corner{left:24px;bottom:3px;gap:10px}.motion-corner{right:18px;bottom:0}.unfold{font-size:9px}.layer-marks i{width:10px}.gallery-footer{height:46px;padding:0 24px;font-size:7px}.gallery-footer button{font-size:8px}.gesture-hint{bottom:0;font-size:8px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}dialog{padding:24px;width:calc(100% - 28px);max-height:90svh}.about-dialog{padding:27px}.about-dialog h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.motion-button{display:none}}

/* Quiet controls remain legible against the light gallery wall. */
.pavilion,.edition,.studio-link,.unfold,.gallery-footer,.gallery-footer button{color:#687660}.gallery-footer{font-size:9px}.edition{font-size:9px}.gesture-hint{color:#7a8772}.motion-button{color:#7b8a71}
@media(max-width:420px){.masthead{padding:0 19px;gap:12px}.wordmark{letter-spacing:1.9px;gap:8px}.masthead nav{gap:9px}.studio-link{gap:5px}.gallery-footer{font-size:8px}.caption-line{gap:5px}.identity{min-width:180px}}

/* Gallery controls: larger colour chips, creation nearby, reveal on the object stage. */
.object-space #tile-3d{bottom:50px}.object-space .gesture-hint{bottom:59px}.unfold-overlay{position:absolute;bottom:3px;left:50%;transform:translateX(-50%);z-index:2}.unfold-overlay .unfold{min-height:42px;padding:11px 17px;gap:10px;border:1px solid #bcc7b2;border-radius:24px;background:#fafbf4eb;color:#47613e;font-size:12px;letter-spacing:.2px;box-shadow:0 3px 15px #4355350a;backdrop-filter:blur(8px);transition:background .25s,box-shadow .25s,transform .25s}.unfold-overlay .unfold:hover{background:#edf3e4;box-shadow:0 4px 18px #43553515;transform:translateY(-1px)}.unfold-overlay .unfold:disabled{opacity:.7}.unfold-overlay .unfold svg{width:13px;height:13px;stroke-width:1.2}.unfold-overlay .layer-marks{margin-left:4px;gap:3px}.unfold-overlay .layer-marks i{width:10px;height:3px;border-radius:2px}.unfold-overlay .layer-marks i.active{background:#71885e}.palette-actions{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:17px}.palette-actions .swatches{margin:0;gap:7px}.palette-actions .swatch{width:36px;height:36px;padding:5px;flex-shrink:0}.generate-tile{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:40px;padding:10px 15px;border:1px solid #bcc7b2;border-radius:22px;font-size:11px;color:#47613e;background:#edf2e4;white-space:nowrap;transition:background .25s,transform .25s}.generate-tile svg{height:16px;width:16px;stroke:currentColor;fill:none;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.generate-tile:hover{background:#e1eacf;transform:translateY(-1px)}.generate-tile:active{transform:scale(.97)}
@media(max-width:760px){.artwork-caption{padding-bottom:37px}.palette-actions{flex-direction:column;gap:13px;margin-top:15px}.palette-actions .swatches{gap:6px}.palette-actions .swatch{width:34px;height:34px;padding:5px}.generate-tile{min-height:39px;padding:10px 17px}.object-space #tile-3d{bottom:48px}.object-space .gesture-hint{bottom:56px}.unfold-overlay{bottom:0}.unfold-overlay .unfold{min-height:40px;padding:10px 16px;font-size:12px}}
@media(max-width:360px){.palette-actions .swatches{gap:3px}.palette-actions .swatch{width:31px;height:31px;padding:4px}}
