.project-page .site-header{background:color-mix(in srgb, var(--bg) 96%, transparent);border-bottom-color:var(--line)}.project-page .project-main{width:100%;max-width:820px;margin:0 auto;padding:0 18px}.project-page .project-back{padding:20px 0 0}.project-page .project-back a{color:var(--muted);font-size:10.5pt;text-decoration:none}.project-page .project-back a:hover{color:var(--fg)}.project-page .project-hero{border-bottom:1px solid var(--line);padding:48px 0}.project-page .project-title{letter-spacing:-.018em;margin:0 0 14px;font-size:16pt;font-weight:500;line-height:1.2}.project-page .project-intro,.project-page .module p,.project-page .module .rich-text{max-width:720px}.project-page .module{border-bottom:1px solid var(--line);width:100%;scroll-margin-top:calc(var(--header-h) + 10px);padding:48px 0}.project-page .module:last-child{border-bottom:0}.project-page .module-heading{letter-spacing:-.018em;margin:0 0 18px;font-size:16pt;font-weight:500;line-height:1.2}.project-page .module-intro{margin-bottom:20px}.project-page .module p{color:var(--muted);margin:0 0 14px;font-size:12pt;line-height:1.62}.project-page .module p:last-child{margin-bottom:0}.project-page .module-image,.project-page .module-gallery,.project-page .module-image-figure,.project-page .text-module-media,.project-page .text-module-image,.project-page .gallery-carousel,.project-page .gallery-slide,.project-page .gallery-media{width:100%;max-width:none}.project-page .module-image-figure,.project-page .gallery-slide,.project-page .text-module-image{margin:0}.project-page .text-module-media{gap:28px;margin-top:28px;display:grid}.project-page .media-open{background:var(--soft);width:100%;color:inherit;cursor:zoom-in;text-align:left;border:0;margin:0;padding:0;display:block;overflow:hidden}.project-page .media-open img{transform-origin:50%;width:100%;height:auto;margin:0;transition:transform .28s,filter .28s;display:block}@media (hover:hover) and (pointer:fine){.project-page .media-open:hover img,.project-page .media-open:focus-visible img{filter:brightness(.94);transform:scale(1.008)}}.project-page .media-open:focus-visible,.project-page .gallery-nav:focus-visible{outline-offset:-2px;outline:1px solid}.project-page .module-caption{color:var(--small);margin-top:8px;font-size:10.5pt;line-height:1.5}.project-page .gallery-slide{display:none}.project-page .gallery-slide.is-active{animation:.18s ease-out gallery-reveal;display:block}@keyframes gallery-reveal{0%{opacity:.84}to{opacity:1}}.project-page .gallery-media{background:var(--soft);touch-action:pan-y;position:relative;overflow:hidden}.project-page .gallery-nav{z-index:3;color:#fff;opacity:0;width:min(22%,94px);font-family:var(--font-display);text-shadow:0 1px 5px #000000b8;cursor:pointer;background:0 0;border:0;padding:0 14px;font-size:16pt;line-height:1;transition:opacity .14s;position:absolute;top:0;bottom:0}.project-page .gallery-prev{text-align:left;left:0}.project-page .gallery-next{text-align:right;right:0}@media (hover:hover) and (pointer:fine){.project-page .gallery-nav:hover,.project-page .gallery-nav:focus-visible{opacity:1}}@media (hover:none),(pointer:coarse){.project-page .gallery-nav{display:none}}.project-page .module-inline-links{border-top:1px solid var(--line);margin-top:28px}.project-page .module-inline-link{border-bottom:1px solid var(--line);color:var(--fg);font-family:var(--font-display);justify-content:space-between;align-items:baseline;gap:18px;padding:11px 0;font-size:10.5pt;text-decoration:none;display:flex}.project-page .module-inline-link:hover{text-underline-offset:4px;text-decoration:underline}body.media-lightbox-open{overflow:hidden}.project-lightbox{color:#fff;background:#0a0a0af5;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0}.project-lightbox::backdrop{background:#0a0a0af5}.project-lightbox .lightbox-shell{grid-template-rows:minmax(0,1fr) auto;width:100%;height:100%;padding:48px 58px 26px;display:grid;position:relative}.project-lightbox .lightbox-media{justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative}.project-lightbox .lightbox-image{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 126px);display:block}.project-lightbox .lightbox-caption{color:#ffffffd1;text-align:center;width:min(100%,920px);margin:14px auto 0;font-size:10.5pt;line-height:1.5}.project-lightbox .lightbox-close,.project-lightbox .lightbox-nav{color:#fff;font-family:var(--font-display);cursor:pointer;background:0 0;border:0}.project-lightbox .lightbox-close{z-index:5;opacity:.8;width:34px;height:34px;padding:0;font-size:23pt;font-weight:300;line-height:1;position:absolute;top:13px;right:18px}.project-lightbox .lightbox-close:hover,.project-lightbox .lightbox-close:focus-visible{opacity:1}.project-lightbox .lightbox-nav{z-index:4;opacity:.58;width:54px;padding:0;font-size:17pt;position:absolute;top:0;bottom:0}.project-lightbox .lightbox-nav:hover,.project-lightbox .lightbox-nav:focus-visible{opacity:1}.project-lightbox .lightbox-prev{text-align:left;left:-54px}.project-lightbox .lightbox-next{text-align:right;right:-54px}.project-lightbox .lightbox-nav[hidden],.project-lightbox .lightbox-caption[hidden]{display:none}.project-page .accordion{border-top:1px solid var(--line)}.project-page .accordion details{border-bottom:1px solid var(--line)}.project-page .accordion summary{min-height:48px;font-size:12pt}.project-page .steps{border-top:1px solid var(--line)}.project-page .step,.project-page .update-item{border-bottom:1px solid var(--line);padding:16px 0}.project-page .project-launch{justify-content:center;margin:0 0 24px;display:flex}.project-page .project-launch a{border:1px solid var(--fg);background:var(--fg);max-width:100%;min-height:44px;color:var(--bg);font-family:var(--font-display);text-align:center;white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;padding:0 15px;font-size:12pt;font-weight:700;line-height:1.1;text-decoration:none;transition:opacity .15s;display:inline-flex}.project-page .project-launch a:hover{opacity:.84}.atlas-project{--atlas-space:756px}.atlas-project .atlas-hero{padding-top:var(--atlas-space);padding-bottom:48px;position:relative;overflow:hidden}.atlas-project .atlas-splash{height:var(--atlas-space);pointer-events:auto;position:absolute;inset:0 0 auto;overflow:hidden}.atlas-project .globe-stage{width:700px;max-width:calc(100vw - 48px);height:700px;max-height:calc(100vw - 48px);color:var(--line);position:absolute;top:28px;left:50%;transform:translate(-50%)}.atlas-project .globe-canvas{cursor:default;touch-action:pan-y;background:0 0;width:100%;height:100%;display:block}.atlas-project .project-intro{max-width:720px;color:var(--muted);text-align:center;margin:22px auto 0;font-size:12pt;line-height:1.62}@media (width<=720px){.project-page .project-main{padding:0 14px}.project-page .project-hero,.project-page .module{padding-top:40px;padding-bottom:40px}.project-page .text-module-media,.project-page .module-inline-links{margin-top:22px}.project-page .project-launch a{min-height:42px;padding-left:10px;padding-right:10px;font-size:clamp(9.5pt,3.7vw,12pt)}.project-lightbox .lightbox-shell{padding:50px 12px 20px}.project-lightbox .lightbox-image{max-height:calc(100dvh - 116px)}.project-lightbox .lightbox-nav{opacity:.72;width:40px}.project-lightbox .lightbox-prev{left:0}.project-lightbox .lightbox-next{right:0}.atlas-project{--atlas-space:408px}.atlas-project .atlas-hero{padding-top:var(--atlas-space)}.atlas-project .globe-stage{width:360px;max-width:calc(100vw - 28px);height:360px;max-height:calc(100vw - 28px);top:24px}}@media (prefers-reduced-motion:reduce){.project-page .media-open img,.project-page .gallery-slide{transition:none;animation:none}}
