.gallery-lightbox{z-index:220;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#111112e0;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.gallery-lightbox__panel{flex-direction:column;align-items:center;gap:16px;width:min(100%,1100px);max-height:min(90vh,900px);display:flex;position:relative}.gallery-lightbox__panel img{object-fit:contain;background:#1a1a1c;border-radius:12px;width:auto;max-width:100%;height:auto;max-height:min(78vh,820px)}.gallery-lightbox__caption{color:#ffffffb8;justify-content:space-between;gap:16px;width:100%;margin:0;font-size:13px;display:flex}.gallery-lightbox__caption span{color:#ffffff73;flex-shrink:0}.gallery-lightbox__close{z-index:2;color:#fff;cursor:pointer;width:40px;height:40px;transition:background var(--glow-ease), color var(--glow-ease), box-shadow var(--glow-ease);background:#ffffff1a;border:none;border-radius:100px;font-size:28px;line-height:1;position:absolute;top:-8px;right:-4px;box-shadow:0 0 #0000}.gallery-lightbox__close:hover{background:var(--accent);color:var(--on-accent);box-shadow:var(--glow)}.gallery-lightbox__nav{z-index:2;color:#fff;cursor:pointer;width:44px;height:44px;transition:background var(--glow-ease), color var(--glow-ease), box-shadow var(--glow-ease);background:#ffffff1a;border:none;border-radius:100px;font-size:28px;line-height:1;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 0 #0000}.gallery-lightbox__nav:hover{background:var(--accent);color:var(--on-accent);box-shadow:var(--glow)}.gallery-lightbox__nav--prev{left:-8px}.gallery-lightbox__nav--next{right:-8px}@media (width<=720px){.gallery-lightbox{align-items:start;padding:56px 12px 24px}.gallery-lightbox__panel{width:100%;max-height:none}.gallery-lightbox__panel img{border-radius:10px;max-height:min(62dvh,520px)}.gallery-lightbox__close{position:fixed;top:8px;right:8px}.gallery-lightbox__nav{width:44px;height:44px;font-size:24px}.gallery-lightbox__nav--prev{left:8px}.gallery-lightbox__nav--next{right:8px}.gallery-lightbox__caption{flex-direction:column;gap:4px;font-size:12px}}.project-overview{gap:40px;display:grid}.project-specs{border-radius:var(--radius-lg);background:var(--surface-raised);margin:0;padding:12px 32px}.project-specs div{border-bottom:1px solid var(--hairline-strong);justify-content:space-between;gap:24px;padding:16px 0;display:flex}.project-specs div:last-child{border-bottom:none}.project-specs dt{color:var(--text-muted);font-size:15px;font-weight:600}.project-specs dd{letter-spacing:-.02em;text-align:right;margin:0;font-size:17px;font-weight:700}.project-compare{gap:20px;display:grid}.project-compare figure{border-radius:var(--radius-lg);margin:0;position:relative;overflow:hidden}.project-compare img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.project-compare figcaption{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0009;border-radius:980px;padding:6px 14px;font-size:14px;font-weight:700;position:absolute;top:18px;left:18px}.project-videos{gap:20px;display:grid}.project-videos video{aspect-ratio:16/9;border-radius:var(--radius-lg);background:#000;width:100%}.project-gallery-grid{gap:20px;display:grid}.project-gallery-item{border-radius:var(--radius-md);background:var(--surface-raised);cursor:zoom-in;text-align:left;font:inherit;color:inherit;border:none;margin:0;padding:0;position:relative;overflow:hidden}.project-gallery-item img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;transition:transform 1.2s var(--ease-out);display:block}.project-gallery-item:hover img{transform:scale(1.04)}.project-gallery-item span{color:#fff;background:linear-gradient(#0000,#0009);padding:40px 20px 18px;font-size:15px;font-weight:700;position:absolute;bottom:0;left:0;right:0}.project-quote{text-align:center;max-width:760px;margin:0 auto}.project-quote blockquote{letter-spacing:-.03em;margin:0;font-size:clamp(24px,3vw,36px);font-weight:700;line-height:1.25}.project-quote figcaption{color:var(--text-muted);margin-top:20px;font-size:15px}@media (width>=734px){.project-compare,.project-gallery-grid{grid-template-columns:1fr 1fr}}@media (width>=900px){.project-overview{grid-template-columns:1.2fr .8fr;align-items:start;gap:64px}}@media (width>=1068px){.project-gallery-grid--three{grid-template-columns:repeat(3,1fr)}}.project-gallery-more{text-align:center;margin-top:32px}
