body.project-world{min-height:100svh;overflow:hidden;background:#082443}.project-world header{position:relative;z-index:10;background:#061a32cc}.project-world #gallery.blueprint-map,.project-world #gallery.has-viewer.picture-frame{position:absolute;inset:90px 0 0;margin:0;width:100%;max-width:none;height:calc(100svh - 90px);max-height:none;border:0;border-radius:0;padding:30px 5%;background:radial-gradient(ellipse at 55% 45%,#225786,#071b35 80%);display:flex;flex-direction:column}.project-world #gallery-title{position:relative;font-size:clamp(30px,4vw,54px);margin:6px 0 10px;color:#edf6ff}.project-world #gallery-type{color:#aed9ff;margin:0}.project-world #gallery-description{color:#c0d4e9!important;font-size:14px;max-width:760px;margin:0 180px 0 0}.project-world #gallery #gallery-images{flex:1;min-height:0;height:auto;margin:0;display:flex;flex-direction:column}.project-world #gallery .close{position:absolute;right:5%;top:35px;font-size:14px;border:1px solid #b6dcff55;border-radius:25px;padding:10px 16px;color:#eaf6ff;background:#061b35bb;z-index:8}.project-world .map-space{perspective:1400px;position:relative}.project-world .map-space::before{content:'';position:absolute;inset:55% -10% -15%;background-image:linear-gradient(#80c0ff25 1px,transparent 1px),linear-gradient(90deg,#80c0ff25 1px,transparent 1px);background-size:55px 55px;transform:rotateX(65deg);transform-origin:50% 100%;pointer-events:none;opacity:.45}.project-world .blueprint-plan{transform:rotateY(var(--yaw,-2deg)) rotateX(var(--pitch,1deg));transform-style:preserve-3d;transition:transform .25s ease-out;filter:drop-shadow(0 20px 25px #020b1c99)}.project-world .map-point{transform:translate(-50%,-50%) translateZ(40px);display:flex;align-items:center;gap:8px;padding:6px;background:#071d36e8;border:1px solid #a4d4ff66;border-radius:30px;box-shadow:0 6px 18px #0007}.map-dot svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6}.project-world .map-dot{width:29px;height:29px;box-shadow:none}.project-world .map-label{position:static;opacity:1;transform:none;background:none;border:0;padding:0 7px 0 0;font-size:14px}.project-world .map-instruction{color:#c0d4e9;margin:16px 0}.project-world #gallery.picture-frame .render-viewer{flex:1;width:100%;height:auto;min-height:0;border:0;box-shadow:none;background:#020b16aa;padding:14px;border-radius:0}.project-world #gallery.picture-frame::before{opacity:.25}.project-world #gallery.picture-frame #gallery-title{font-size:28px}.project-world #gallery.picture-frame #gallery-images{padding-top:15px}.project-world #gallery.picture-frame .viewer-main{height:100%}.project-world #gallery.picture-frame .close{max-width:180px}html[data-theme=light] .project-world #gallery.blueprint-map{background:radial-gradient(ellipse,#d9ecfa,#aacbe8)}html[data-theme=light] .project-world #gallery.blueprint-map #gallery-title{color:#123352}html[data-theme=light] .project-world #gallery.blueprint-map #gallery-type,html[data-theme=light] .project-world #gallery.blueprint-map #gallery-description,html[data-theme=light] .project-world .map-instruction{color:#254a6e!important}@media(max-width:800px){.project-world #gallery.blueprint-map,.project-world #gallery.has-viewer.picture-frame{inset:140px 0 0;height:calc(100svh - 140px);padding:20px 4%}.project-world #gallery-description{display:none}.project-world #gallery .close{top:20px;right:4%;font-size:12px;padding:8px}.project-world #gallery-title{font-size:28px;max-width:65%}.project-world .map-point{padding:3px;gap:0}.project-world .map-label{font-size:12px;padding-right:4px}.project-world .map-dot{width:22px;height:22px}.project-world .map-dot svg{width:16px}.project-world .blueprint-plan{transform:none}.project-world .map-instruction{font-size:13px}}@media(prefers-reduced-motion:reduce){.project-world .blueprint-plan{transition:none;transform:none}}

.project-world .map-space{perspective:1100px}.project-world .blueprint-plan{transform:translateZ(-45px) rotateY(var(--yaw,-9deg)) rotateX(var(--pitch,5deg));width:min(90%,calc(85cqh * var(--plan-width)));overflow:visible}.project-world .blueprint-plan>img{position:relative;transform:translateZ(55px);box-shadow:0 12px 28px #0005;border:1px solid #b4ddff33}.blueprint-volume{position:absolute;inset:0;transform-style:preserve-3d;pointer-events:none}.blueprint-volume .depth-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:fill!important;margin:0!important;opacity:.35;filter:brightness(1.35);border:1px solid #c5e7ff77}.depth-back{transform:translateZ(-130px)}.depth-mid{transform:translateZ(-40px)}.depth-floor,.depth-wall{position:absolute;background-image:linear-gradient(#a9d9ff33 1px,transparent 1px),linear-gradient(90deg,#a9d9ff33 1px,transparent 1px);background-size:35px 35px;border:1px solid #c5e7ff66}.depth-floor{left:0;right:0;bottom:0;height:185px;transform-origin:50% 100%;transform:translateZ(55px) rotateX(90deg);background-color:#12365466}.depth-wall{top:0;bottom:0;right:0;width:185px;transform-origin:100% 50%;transform:translateZ(55px) rotateY(-90deg);background-color:#12365455}.project-world .map-point{transform:translate(-50%,-50%) translateZ(100px)}@media(max-width:800px){.project-world .blueprint-plan{width:min(93%,calc(85cqh * var(--plan-width)));transform:rotateY(-5deg) rotateX(3deg)}.blueprint-volume .depth-layer{opacity:.2}.depth-floor,.depth-wall{opacity:.5}}@media(prefers-reduced-motion:reduce){.project-world .blueprint-plan{transform:rotateY(-6deg) rotateX(3deg)}}

/* Blend the flat blueprint into the project page. */
.project-world .map-space{perspective:none}.project-world .map-space::before,.blueprint-volume{display:none}.project-world .blueprint-plan{transform:none!important;transform-style:flat;transition:none;filter:none;width:min(100%,calc(100cqh * var(--plan-width)));overflow:visible}.project-world .blueprint-plan>img{transform:none;box-shadow:none;border:0;mix-blend-mode:screen;opacity:.7;mask-image:radial-gradient(ellipse at center,#000 48%,#000a 72%,transparent 100%)}.project-world .map-point{transform:translate(-50%,-50%);box-shadow:none;background:#092744b3;border:0;border-radius:0;padding:5px;gap:9px}.project-world .map-dot{background:#b6ddff;color:#143553;box-shadow:0 0 0 4px #8bc5f51a}.project-world .map-label{color:#e1f0ff;font-size:14px;text-shadow:0 2px 8px #03162e}.project-world #gallery.blueprint-map{background:radial-gradient(ellipse at 55% 60%,#173e63,#071b35 80%)}.project-world #gallery.blueprint-map #gallery-title{z-index:2}.project-world #gallery.blueprint-map #gallery-images{margin-top:-15px}.project-world .map-instruction{position:relative;z-index:2;opacity:.8}.project-world header{border-bottom-color:#a7d8ff1a;background:#071b35}.project-world #gallery.blueprint-map::before{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#95caff08 1px,transparent 1px),linear-gradient(90deg,#95caff08 1px,transparent 1px);background-size:44px 44px}.project-world #gallery.blueprint-map .close{background:transparent;border-color:#a7d8ff33}html[data-theme=light] .project-world .blueprint-plan>img{mix-blend-mode:multiply;opacity:.72}html[data-theme=light] .project-world header{background:#c5ddee}@media(max-width:800px){.project-world .blueprint-plan{width:min(100%,calc(100cqh * var(--plan-width)))}.project-world .map-label{font-size:12px}.project-world .map-point{padding:3px;gap:5px}}
/* Full-page drafting surface and oversized blueprint. */
body.project-world{background:radial-gradient(ellipse at 55% 60%,#173e63,#071b35 80%);background-attachment:fixed;isolation:isolate}.project-world::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#95caff09 1px,transparent 1px),linear-gradient(90deg,#95caff09 1px,transparent 1px);background-size:44px 44px}.project-world header{background:transparent;border-color:#a7d8ff22}.project-world #gallery.blueprint-map{background:transparent;overflow:hidden}.project-world #gallery.blueprint-map::before{display:none}.project-world #gallery.blueprint-map #gallery-images{position:absolute;inset:-90px 0 0;margin:0;height:auto;z-index:0;display:block}.project-world #gallery.blueprint-map .map-space{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;container-type:size}.project-world .blueprint-plan{width:min(108vw,calc(108cqh * var(--plan-width)));max-width:none;flex-shrink:0}.project-world .blueprint-plan>img{opacity:.78;mask-image:radial-gradient(ellipse at center,#000 56%,#000b 78%,transparent 100%)}.project-world #gallery.blueprint-map #gallery-title,.project-world #gallery.blueprint-map #gallery-type,.project-world #gallery.blueprint-map #gallery-description{position:relative;z-index:3;pointer-events:none;width:fit-content;text-shadow:0 2px 14px #031326,0 0 35px #031326}.project-world #gallery.blueprint-map #gallery-description{max-width:630px;background:linear-gradient(90deg,#071b35bb,transparent);padding:5px 20px 5px 0}.project-world #gallery.blueprint-map .map-instruction{position:absolute;bottom:25px;left:5%;margin:0;z-index:3;background:#071b3580;padding:9px 14px;border-left:1px solid #acd6ff55}.project-world .map-point{background:#071b35b3}.project-world #gallery.blueprint-map .close{z-index:5;background:#071b3570}html[data-theme=light] body.project-world{background:radial-gradient(ellipse,#d9ecfa,#aacbe8)}html[data-theme=light] .project-world header{background:transparent}html[data-theme=light] .project-world #gallery.blueprint-map{background:transparent}html[data-theme=light] .project-world #gallery.blueprint-map #gallery-title,html[data-theme=light] .project-world #gallery.blueprint-map #gallery-type,html[data-theme=light] .project-world #gallery.blueprint-map #gallery-description{text-shadow:0 2px 15px #edf7ff;background:none}html[data-theme=light] .project-world::before{background-image:linear-gradient(#254a6e12 1px,transparent 1px),linear-gradient(90deg,#254a6e12 1px,transparent 1px)}@media(max-width:800px){.project-world #gallery.blueprint-map #gallery-images{inset:-140px 0 0}.project-world .blueprint-plan{width:min(100vw,calc(100cqh * var(--plan-width)))}.project-world #gallery.blueprint-map .map-instruction{left:4%;right:4%;bottom:20px;font-size:13px}.project-world #gallery.blueprint-map #gallery-title{max-width:60%;text-shadow:0 2px 10px #031326}.project-world .map-label{font-size:12px}.project-world .map-point{gap:3px}}
/* Raised controls above the blueprint surface. */
.project-world #gallery .close,.project-world #gallery.blueprint-map .close{background:linear-gradient(180deg,#eef8ff,#a9d5f7);color:#082849;border:1px solid #e7f6ff;border-radius:8px;font-size:16px;font-weight:600;padding:13px 21px;box-shadow:0 4px 0 #4e84af,0 8px 24px #0007;text-shadow:none;transition:transform .15s,box-shadow .15s;z-index:12}.project-world #gallery .close:hover{transform:translateY(-2px);box-shadow:0 6px 0 #4e84af,0 12px 28px #0008}.project-world #gallery .close:active{transform:translateY(3px);box-shadow:0 1px 0 #4e84af,0 4px 14px #0006}.project-world #gallery .close:focus-visible,.project-world .map-point:focus-visible{outline:3px solid #fff;outline-offset:6px}.project-world .map-point{background:linear-gradient(160deg,#2f608a,#0a2b4b);border:1px solid #a4d7ff88;border-radius:25px;padding:7px 12px 7px 7px;gap:10px;box-shadow:0 4px 0 #03172d,0 8px 18px #0009,inset 0 1px 1px #ecf8ff55;transition:box-shadow .18s,margin-top .18s}.project-world .map-point::after{content:'';position:absolute;left:23px;top:calc(100% + 3px);height:13px;width:2px;background:linear-gradient(#acd7ff,#acd7ff55);box-shadow:0 2px 5px #0008}.project-world .map-dot{width:34px;height:34px;background:radial-gradient(circle at 32% 22%,#fff,#c6e7ff 52%,#71afd9);color:#0b3556;border:1px solid #f1faff;box-shadow:0 2px 0 #4a7c9e,0 4px 8px #0005,inset 0 1px 2px #fff}.project-world .map-label{font-weight:500;color:#f3f9ff;text-shadow:0 1px 2px #0007;padding:0;font-size:14px}.project-world .map-point:hover,.project-world .map-point:focus-visible{margin-top:-4px;box-shadow:0 8px 0 #03172d,0 14px 24px #0009,inset 0 1px 1px #ecf8ff77}.project-world .map-point:hover .map-dot{transform:none;background:radial-gradient(circle at 32% 22%,#fff,#dcefff 52%,#8ec6ed)}html[data-theme=light] .project-world .map-point{background:linear-gradient(160deg,#497ca7,#173e63)}@media(max-width:800px){.project-world #gallery .close,.project-world #gallery.blueprint-map .close{font-size:14px;padding:10px 13px;top:20px;box-shadow:0 3px 0 #4e84af,0 6px 18px #0006}.project-world .map-point{padding:4px 7px 4px 4px;gap:5px}.project-world .map-dot{width:27px;height:27px}.project-world .map-label{font-size:12px}.project-world .map-point::after{left:17px;height:9px}}@media(prefers-reduced-motion:reduce){.project-world .map-point,.project-world #gallery .close{transition:none}}

.project-world .model-link{position:absolute;right:5%;top:96px;z-index:12;border:1px solid #c5e5ff88;border-radius:8px;background:#163d63;color:#edf8ff;padding:12px 21px;font-size:16px;font-weight:600;text-decoration:none;box-shadow:0 4px 0 #061d35,0 8px 20px #0005}.project-world .model-link:hover{background:#2d608b}.project-world #gallery.picture-frame .model-link{display:none}@media(max-width:800px){.project-world .model-link{right:4%;top:75px;font-size:14px;padding:10px 13px}}

.project-world #gallery.blueprint-map .model-link{display:inline-flex;align-items:center;justify-content:center;visibility:visible;opacity:1;z-index:15;top:100px;background:linear-gradient(#eaf7ff,#a8d4f6);border:1px solid #e0f2ff;color:#082b49;box-shadow:0 4px 0 #4e84af,0 8px 24px #0006;min-width:155px}.project-world #gallery.blueprint-map .model-link:hover{background:#edfaff}.project-world .model-link:focus-visible{outline:3px solid #fff;outline-offset:5px}@media(max-width:800px){.project-world #gallery.blueprint-map .model-link{top:79px;min-width:130px}}
