/* Five exhibition objects share the original site's palette and controls. */
.hologram-page{--ease-in-out:cubic-bezier(.77,0,.175,1);background-color:#040d18;background-image:radial-gradient(ellipse at 52% 35%,#10395055,transparent 55%),radial-gradient(ellipse at 90% 55%,#3c246c35,transparent 42%)}
.hologram-page main{max-width:1520px}.holo-intro{padding-top:36px;padding-bottom:26px}.holo-intro h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(33px,4.4vw,65px);font-weight:400;letter-spacing:-1.8px;line-height:1.12}.holo-intro .intro-description{font-size:15px}.collection-count{font-size:15px;white-space:nowrap;text-align:right;color:var(--cyan)}.collection-count small{font-size:11px;color:var(--muted)}.hologram-page .filters{margin-bottom:18px}.hologram-page .filters button{min-height:36px}.hologram-page .filters button[aria-pressed=true]{background:#173b4d}.hologram-page .primary{border-radius:28px;background:linear-gradient(135deg,#153f50,#0d2339);border-color:#70eafa;color:#e4fbff;box-shadow:0 0 22px #58e8ff26;font-weight:400}.hologram-page .primary:focus-visible{outline-offset:6px}.hologram-page .round-button{border-radius:50%;background:#10283bd9}.hologram-page .project-placeholder{min-height:100%}
.holo-details{position:relative;z-index:3;display:flex;align-items:center;gap:25px;max-width:1190px;margin:0 auto;padding:20px 25px;background:linear-gradient(120deg,#16354ce3,#0b1b2add);border:1px solid #44657b;border-radius:14px;box-shadow:inset 0 1px 0 #b2e7ff19,0 8px 30px #0003}.holo-detail-title{flex:1;min-width:0}.holo-detail-title h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(21px,2vw,29px);line-height:1.2;margin:6px 0 0;overflow-wrap:anywhere}.selected-meta{font-size:10px;color:#98c3d4}.selected-description{color:#98b1c3;line-height:1.55;font-size:12px;margin:0;max-width:340px;flex:1;border-left:1px solid #365367;padding-left:24px}.holo-details .primary{flex-shrink:0}.holo-controls{display:flex;gap:18px;align-items:center;justify-content:center;max-width:780px;margin:25px auto 13px;min-height:75px}.project-track{flex:1;max-width:530px;display:grid;grid-template-columns:1fr auto;gap:9px 20px;align-items:center}.project-track label{grid-column:1/-1;text-align:center;font-size:12px;color:#a6bdca}.project-track input{width:100%;min-width:0;accent-color:#69eaff;cursor:ew-resize;height:24px;margin:0;touch-action:pan-y}.position-text{font-size:10px;color:#88bed2;min-width:45px;text-align:right;font-variant-numeric:tabular-nums}.project-strip{display:flex;overflow-x:auto;gap:12px;max-width:1190px;margin:20px auto 0;padding:8px 5px 16px;scrollbar-width:thin;scrollbar-color:#426c7e transparent}.project-chip{flex:0 0 128px;min-width:0;padding:5px;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left;color:#9bb4c6}.project-chip>span{display:block;aspect-ratio:8/5;overflow:hidden;border-radius:4px;background:#0b2032;opacity:.65}.project-chip img{width:100%;height:100%;object-fit:cover;object-position:top}.project-chip strong{display:block;font-size:10px;font-weight:400;margin-top:7px;line-height:1.35;min-height:28px}.project-chip[aria-pressed=true]{border-color:#63c9db;background:#113447;color:#ecfbff}.project-chip[aria-pressed=true]>span{opacity:1}.project-chip .project-placeholder{padding:3px;gap:3px}.project-chip .project-placeholder strong{font-size:9px;margin:0;min-height:0}.project-chip .project-placeholder>span{font-size:20px}.project-chip .project-placeholder small{display:none}
/* Portals: luminous arches open onto actual project previews. */
.holo-stage{position:relative;perspective:1400px;perspective-origin:50% 45%;height:clamp(360px,44vw,590px);overflow:hidden;isolation:isolate;touch-action:pan-y;border-radius:18px;outline-offset:3px}.holo-deck{position:absolute;inset:0;transform-style:preserve-3d;transition:transform 200ms var(--ease-out);pointer-events:none}.deck-card{position:absolute;left:50%;top:25px;padding:0;pointer-events:auto;background:#103247c9;border:1px solid #4b8ba9;text-align:left;transform-style:preserve-3d;transition:transform 650ms var(--ease-out),opacity 350ms ease;user-select:none}.deck-window{display:block;overflow:hidden;background:#061825}.deck-window img{width:100%;height:100%;object-fit:cover;object-position:top;pointer-events:none}.deck-title{display:block;color:#dff8ff;text-align:center;font-family:Georgia,serif;font-size:clamp(18px,1.7vw,26px);padding:12px 10px;line-height:1.2}.portal-stage{background:radial-gradient(ellipse at 50% 70%,#15496644,transparent 60%)}.portal-stage .deck-card{aspect-ratio:1.12;border-radius:110px 110px 12px 12px;border:2px solid #50d6ef;box-shadow:0 0 8px #62efff88,inset 0 0 20px #4fe0ff28,0 12px 35px #0009;padding:37px 13px 0;background:linear-gradient(135deg,#1f4e6580,#071e3066)}.portal-stage .deck-card[aria-pressed=true]{border-color:#b7f8ff;box-shadow:0 0 9px #6aefff,0 0 30px #44cffa33,inset 0 0 22px #4fe0ff28}.portal-stage .deck-window{height:calc(100% - 56px);border-radius:70px 70px 4px 4px}.portal-stage .deck-window img{object-fit:contain;background:#091827}.deck-threshold{pointer-events:none;position:absolute;bottom:-7px;left:-13px;right:-13px;height:5px;background:#9bf7ff;box-shadow:0 0 12px #6defff,0 0 22px #6defff;border-radius:50%}.portal-path{position:absolute;left:12%;right:12%;height:150px;bottom:0;transform:perspective(360px) rotateX(52deg);border-left:2px solid #6feaff75;border-right:2px solid #6feaff75;background:linear-gradient(90deg,#61e9ff12,transparent 25%,transparent 75%,#61e9ff12);box-shadow:0 0 26px #61e9ff25;z-index:-1;mask-image:linear-gradient(transparent,#000 55%)}.holo-floor{position:absolute;inset:55% -50% -100%;background-image:linear-gradient(#61e9ff15 1px,transparent 1px),linear-gradient(90deg,#61e9ff15 1px,transparent 1px);background-size:100px 70px;transform:perspective(450px) rotateX(66deg);mask-image:linear-gradient(transparent,#000 35%,transparent 70%);pointer-events:none;z-index:-1}.projection-strip{position:absolute;left:20%;right:20%;bottom:25px;height:3px;background:#81f0ff;box-shadow:0 0 26px 8px #61e9ff28;border-radius:50%;opacity:.55;z-index:-1}
/* Panorama: neighboring panes share one continuous curved horizon. */
.panorama-stage{height:clamp(350px,42vw,600px);perspective:1500px;background:radial-gradient(ellipse at 50% 70%,#1b485d44,transparent 65%)}.panorama-stage .holo-deck{transform-style:preserve-3d}.panorama-stage .deck-card{border-radius:16px 16px 11px 11px;border-color:#80e9f3;background:linear-gradient(125deg,#33546ba8,#11314a9e);padding:13px 12px 0;top:30px;box-shadow:0 0 14px #61e9ff23,inset 0 0 24px #65e7ff18}.panorama-stage .deck-window{aspect-ratio:8/5;border-radius:5px}.panorama-stage .deck-title{font-family:inherit;font-size:16px;padding:11px}.panorama-stage .deck-threshold{bottom:-3px;left:-2px;right:-2px;height:2px}.panorama-stage .deck-card[aria-pressed=true]{box-shadow:0 0 22px #61e9ff38,inset 0 0 20px #61e9ff20}.panorama-rail{position:absolute;left:-15%;right:-15%;height:150px;border:2px solid #67dcec7d;border-radius:50%;bottom:35px;box-shadow:0 0 15px #61e9ff3b;pointer-events:none;z-index:-1}.panorama-stage .projection-strip{left:5%;right:5%;bottom:17px;opacity:.25}
/* A book opens into a full width website; every spine selects a real work. */
.library-stage{position:relative;height:clamp(320px,40vw,565px);display:flex;align-items:center;justify-content:center;perspective:1300px;isolation:isolate;touch-action:pan-y}.book-spread{position:relative;width:min(800px,76%);aspect-ratio:8/5;transform:rotateX(7deg);transform-style:preserve-3d;display:flex;border-radius:12px;box-shadow:0 0 24px #65f0ff3b,0 0 2px 2px #6ceaff55;background:#0e2a3a}.book-half{position:relative;width:50%;height:100%;overflow:hidden;border:2px solid #8befed;background:#16394b;backface-visibility:hidden}.book-half img,.turning-leaf img{width:200%;height:100%;max-width:none;object-fit:fill;pointer-events:none}.book-left{transform:rotateY(5deg);transform-origin:right center;border-radius:10px 0 0 7px;border-right:0}.book-right{transform:rotateY(-5deg);transform-origin:left center;border-radius:0 10px 7px 0;border-left:0}.book-right img{transform:translateX(-50%)}.book-half .project-placeholder{width:200%}.book-right .project-placeholder{transform:translateX(-50%)}.book-spine{position:absolute;left:calc(50% - 14px);top:0;bottom:0;width:28px;background:linear-gradient(90deg,transparent,#17364944 45%,#e5ffff33 51%,#0002 60%,transparent);pointer-events:none;z-index:2}.book-pages{position:absolute;inset:6px -9px -9px;border:1px solid #7cefff6b;border-radius:10px;transform:translateZ(-8px);background:repeating-linear-gradient(180deg,#265365 0 1px,#071e33 1px 4px);box-shadow:5px 4px 0 #123e5480,10px 8px 0 #5bdff22b}.turning-leaf{position:absolute;left:50%;top:0;width:50%;height:100%;transform-origin:left center;backface-visibility:hidden;border:1px solid #9ef5fc;border-radius:0 8px 8px 0;overflow:hidden;background:#102c3e;pointer-events:none;z-index:4;opacity:0}.turning-leaf img{transform:translateX(-50%)}.book-project-name{position:absolute;bottom:-36px;left:0;right:0;text-align:center;font-family:Georgia,serif;font-size:19px;color:#b9e4ef}.library-platform{position:absolute;bottom:0;height:32px;left:6%;right:6%;border:1px solid #65e3fa50;border-radius:50%;background:radial-gradient(ellipse,#5be5ff18,transparent 70%);z-index:-1}.library-rays{position:absolute;inset:5% 0 0;z-index:-2;background:radial-gradient(ellipse at center,#24516b44,transparent 65%)}.book-shelf{display:flex;align-items:flex-end;gap:13px;overflow-x:auto;padding:20px 20px 15px;margin:12px auto 25px;max-width:1190px;border-bottom:3px solid #78dce8;box-shadow:0 12px 22px -15px #57e6f6;scrollbar-width:thin;scrollbar-color:#446c7d transparent}.glass-book{position:relative;flex:0 0 67px;height:170px;border:1px solid #6c9cae;border-radius:5px 8px 8px 5px;background:linear-gradient(90deg,#173448,#2b526577 14%,#081725bc);box-shadow:inset 4px 0 0 #84d7eb22,3px 4px 0 #082032;transform:rotateY(-12deg);transform-origin:bottom;transition:transform 250ms var(--ease-out),border-color 150ms ease;padding:0;color:#c1dce7}.glass-book:nth-child(3n){height:150px}.glass-book:nth-child(4n){height:160px}.glass-book[aria-pressed=true]{transform:translateY(-12px) rotateY(0);border-color:var(--book-color);box-shadow:0 0 17px #6eeaff28,inset 4px 0 0 #84d7eb55;color:white}.book-name{position:absolute;top:12px;bottom:30px;left:15px;right:8px;writing-mode:vertical-rl;transform:rotate(180deg);text-align:left;font-family:Georgia,serif;font-size:15px;line-height:1.2;overflow:hidden}.book-number{position:absolute;bottom:8px;left:0;right:0;font-size:9px;color:var(--book-color);text-align:center}.book-cover{display:none}.glass-book[aria-pressed=true] .book-name{color:#edfcff}
/* Six real CSS 3D faces. Pointer movement is bounded and snaps to a category. */
.cube-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:42px;align-items:center;max-width:1250px;margin:0 auto 24px}.cube-scene{position:relative;height:490px;min-width:0;touch-action:pan-y;perspective:1200px;--cube-size:320px}.cube-perspective{position:absolute;left:50%;top:42%;width:var(--cube-size);height:var(--cube-size);transform:translate(-50%,-50%);perspective:1200px}.project-cube{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform 700ms var(--ease-out)}.cube-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:17px;padding:20px 18px;border:2px solid #70eaf5;background:linear-gradient(135deg,#173e51f5,#071929f5);box-shadow:inset 0 0 22px #61e9ff36,0 0 7px #7aefff6b;border-radius:8px;backface-visibility:hidden;text-align:left;user-select:none}.face-0{transform:translateZ(calc(var(--cube-size) / 2))}.face-1{transform:rotateY(90deg) translateZ(calc(var(--cube-size) / 2))}.face-2{transform:rotateY(180deg) translateZ(calc(var(--cube-size) / 2))}.face-3{transform:rotateY(-90deg) translateZ(calc(var(--cube-size) / 2))}.face-4{transform:rotateX(90deg) translateZ(calc(var(--cube-size) / 2))}.face-5{transform:rotateX(-90deg) translateZ(calc(var(--cube-size) / 2))}.face-heading{font-size:24px;font-weight:400;color:#e5fbff;line-height:1.2}.face-image{display:block;width:100%;aspect-ratio:8/5;overflow:hidden;border:1px solid #77c9dd77;border-radius:5px}.face-image img{width:100%;height:100%;object-fit:cover;object-position:top;pointer-events:none}.face-image .project-placeholder{padding:4px;gap:4px}.face-image .project-placeholder strong{font-size:15px}.face-count{font-size:11px;color:#82c8dc}.cube-base{position:absolute;bottom:70px;height:48px;width:80%;left:10%;border:1px solid #53d8ed66;border-radius:50%;background:radial-gradient(ellipse,#65eafa4a,transparent 55%);box-shadow:0 0 0 10px #59dff30c,0 0 0 30px #59dff308;pointer-events:none;z-index:-1}.cube-arrows{position:absolute;bottom:3px;left:8%;right:8%;display:flex;gap:12px;align-items:center;justify-content:space-between}.cube-instruction{font-size:11px;color:#8eacbe;text-align:center}.cube-preview{position:relative;border:1px solid #6b8b9e;background:linear-gradient(130deg,#173346d9,#0d1830c9);padding:22px;border-radius:17px;box-shadow:inset 0 1px 0 #d8f7ff22,0 0 30px #71d9ff0d}.cube-preview::before{content:'';height:2px;width:40px;position:absolute;left:-41px;top:50%;background:#65dff5;box-shadow:0 0 10px #6edfff}.cube-preview-heading{font-family:Georgia,serif;font-size:28px;line-height:1.2;margin-bottom:20px}.cube-preview-image{display:block;aspect-ratio:8/5;overflow:hidden;border-radius:7px;background:#0b1e30}.cube-preview-image img{width:100%;height:100%;object-fit:cover;object-position:top}.cube-preview-note{font-size:11px;color:#91aebe;margin:17px 0 0}
/* Light only moves during a requested change; the canvas rests between actions. */
.light-stage{position:relative;height:clamp(360px,46vw,600px);isolation:isolate;overflow:hidden;touch-action:pan-y}.light-source,.light-destination{position:absolute;border:1px solid #72cddd;border-radius:16px;padding:10px;background:linear-gradient(135deg,#23485e80,#07192ccc);box-shadow:inset 0 0 20px #72dfff16,0 0 25px #4de7ff16;transform-origin:center bottom;overflow:hidden}.light-source{left:2%;top:110px;width:30%;transform:perspective(900px) rotateY(12deg);opacity:.7}.light-destination{left:40%;top:32px;width:58%;transform:perspective(1300px) rotateY(-5deg);border-color:#9deefa}.light-source-image,.light-target-image{aspect-ratio:8/5;overflow:hidden;border-radius:7px;background:#0b1c2a}.light-source-image img,.light-target-image img{height:100%;width:100%;object-fit:cover;object-position:top;pointer-events:none}.light-source-title,.light-target-title{display:block;padding:13px 8px 6px;font-family:Georgia,serif;font-size:21px;color:#d9f4ff}.light-source-title{font-size:16px}.light-caption{display:block;font-size:9px;color:#95bdd0;padding:3px 7px 10px}.particle-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}.light-status{position:absolute;bottom:27px;right:3%;font-size:10px;color:#71bdcf}.light-floor{position:absolute;left:-10%;right:-10%;bottom:25px;height:160px;border-bottom:2px solid #73dfee66;border-radius:50%;background:radial-gradient(ellipse,#61e9ff15,transparent 70%);z-index:-1}.replay{font-size:10px;max-width:100px;line-height:1.4;text-align:center;border-radius:8px}
@media(hover:hover) and (pointer:fine){.project-chip:hover{border-color:#3d7288;color:white}.glass-book:hover{transform:translateY(-8px) rotateY(0);border-color:var(--book-color)}.hologram-page .primary:hover{background:#174859}.cube-face:hover{border-color:#b2f5ff}.hologram-page .round-button:hover{background:#17485e}}
@media(max-width:1150px){.cube-scene{--cube-size:265px;height:430px}.cube-layout{gap:30px}.cube-face{padding:15px;gap:12px}.face-heading{font-size:20px}.cube-preview{padding:18px}.cube-preview-heading{font-size:23px}.cube-preview::before{left:-29px;width:28px}.selected-description{display:none}.holo-details{padding:18px 20px}.portal-stage .deck-card{border-radius:90px 90px 10px 10px;padding-top:25px}.portal-stage .deck-window{border-radius:70px 70px 4px 4px}.light-source{top:80px}.holo-intro .intro-description{font-size:13px}}
@media(max-width:800px){.holo-intro{padding-top:28px}.holo-intro h1{font-size:43px}.collection-count{display:none}.hologram-page .filters{gap:6px}.hologram-page .filters button{font-size:10px;padding:7px 11px}.holo-stage{height:420px}.panorama-stage{height:390px}.deck-title{font-size:18px}.portal-stage .deck-card{top:25px;aspect-ratio:1.02}.portal-stage .deck-title{padding:13px 5px}.holo-details h2{font-size:23px}.holo-details .primary{font-size:12px;padding:11px 16px;gap:15px}.holo-controls{margin-top:20px;gap:12px}.project-track label{font-size:11px}.library-stage{height:390px}.book-spread{width:84%}.book-project-name{font-size:16px}.book-shelf{gap:11px;margin-top:0}.glass-book{flex-basis:60px;height:150px}.glass-book:nth-child(3n){height:140px}.glass-book:nth-child(4n){height:145px}.cube-layout{grid-template-columns:1fr;gap:16px}.cube-scene{--cube-size:265px;height:430px;max-width:550px;width:100%;margin:auto}.cube-preview{max-width:560px;width:100%;margin:auto;display:grid;grid-template-columns:1fr 1.7fr;gap:15px;align-items:center}.cube-preview-heading{font-size:24px;margin:0}.cube-preview-image{grid-column:2;grid-row:1/3}.cube-preview-note{font-size:10px;margin:0;align-self:start}.cube-preview::before{display:none}.light-stage{height:430px}.light-source{left:1%;width:30%;top:110px}.light-destination{left:34%;width:65%;top:52px}.light-target-title{font-size:17px;padding:11px 5px 5px}.light-source-title{font-size:12px;padding:9px 0 2px}.light-source,.light-destination{padding:7px;border-radius:10px}.light-caption{font-size:8px;padding-inline:0}.light-status{bottom:40px}.light-source .project-placeholder{padding:6px;gap:4px}.light-source .project-placeholder strong{font-size:11px}.light-source .project-placeholder>span{font-size:20px}.light-source .project-placeholder small{display:none}}
@media(max-width:520px){.hologram-page main{padding-inline:15px}.holo-intro{padding-top:25px;padding-bottom:20px}.holo-intro h1{font-size:35px;letter-spacing:-1px}.holo-intro .intro-description{font-size:12px;margin-top:12px}.hologram-page .filters button{font-size:9px;padding:7px 10px;gap:6px;min-height:35px}.holo-stage{height:340px;border-radius:8px}.portal-stage .deck-card{top:20px;border-radius:75px 75px 9px 9px;padding:25px 8px 0;aspect-ratio:.97}.portal-stage .deck-window{border-radius:52px 52px 4px 4px;height:calc(100% - 48px)}.portal-stage .deck-title{font-size:17px;padding:11px 2px}.portal-path{height:95px;bottom:15px;left:18%;right:18%}.projection-strip{bottom:15px}.panorama-stage{height:295px}.panorama-stage .deck-card{top:25px;padding:8px 7px 0;border-radius:9px}.panorama-stage .deck-title{font-size:12px;padding:10px 4px}.panorama-rail{height:80px;bottom:40px}.holo-details{display:block;padding:17px;border-radius:10px}.holo-detail-title h2{font-size:23px;margin:6px 0 16px}.selected-meta{font-size:9px}.holo-details .primary{width:100%;font-size:12px;min-height:43px}.holo-controls{gap:10px;flex-wrap:wrap;margin:20px auto 9px}.holo-controls .round-button{width:39px;height:39px;font-size:20px}.project-track{min-width:0;gap:7px 7px}.project-track label{font-size:9px;line-height:1.4}.position-text{font-size:9px;min-width:40px}.project-chip{flex-basis:110px}.project-strip{gap:8px;margin-top:12px}.project-chip strong{font-size:9px}.library-stage{height:280px}.book-spread{width:91%}.book-project-name{font-size:14px;bottom:-31px}.book-half .project-placeholder{gap:5px;padding:8px}.book-half .project-placeholder strong{font-size:14px}.book-half .project-placeholder small{font-size:8px}.book-half .project-placeholder>span{font-size:28px}.book-shelf{padding:15px 10px 12px;gap:10px;margin-bottom:20px}.glass-book{height:135px;flex-basis:52px}.glass-book:nth-child(3n){height:123px}.glass-book:nth-child(4n){height:130px}.book-name{font-size:12px;left:12px;top:9px}.book-number{font-size:8px}.cube-scene{--cube-size:215px;height:365px}.cube-face{gap:11px;padding:12px}.face-heading{font-size:16px}.face-count{font-size:9px}.face-image .project-placeholder strong{font-size:10px}.face-image .project-placeholder>span{font-size:23px}.face-image .project-placeholder small{display:none}.cube-base{bottom:60px;width:75%;left:12.5%;height:30px}.cube-arrows{left:2%;right:2%}.cube-instruction{font-size:9px;max-width:160px}.cube-preview{padding:14px;gap:12px;grid-template-columns:1fr 1.35fr}.cube-preview-heading{font-size:19px}.cube-preview-note{font-size:9px}.cube-layout{margin-bottom:20px}.light-stage{height:300px}.light-source{top:94px;left:0;width:30%;padding:5px}.light-destination{top:32px;left:29%;width:70%;padding:5px}.light-caption{font-size:6px;padding:2px 0 5px}.light-source-title{font-size:10px;padding:7px 0 2px}.light-target-title{font-size:13px;padding:9px 3px 5px}.light-status{bottom:32px;font-size:8px}.light-floor{height:90px;bottom:18px}.light-target-image .project-placeholder{padding:8px;gap:5px}.light-target-image .project-placeholder strong{font-size:14px}.light-target-image .project-placeholder small{font-size:8px}.light-target-image .project-placeholder>span{font-size:28px}.replay{max-width:none;margin:auto;font-size:10px;min-height:35px}.holo-controls:has(.replay) .project-track{max-width:calc(100% - 100px)}}
@media(prefers-reduced-motion:reduce){.holo-deck,.deck-card,.project-cube,.glass-book{transition-duration:0ms!important}.turning-leaf,.particle-canvas{display:none}.book-spread{transform:none}.library-stage,.light-stage,.holo-stage{scroll-behavior:auto}}
