.project-detail-background-image{z-index:-1;opacity:0;pointer-events:none;background-color:var(--base-700);width:100%;height:100%;transition:opacity .8s;position:fixed;top:0;left:0;overflow:hidden}.project-detail-background-image.active{opacity:1}.project-detail-background-image img{object-fit:cover;filter:blur(30px)brightness(.2);will-change:filter,transform;width:100%;height:100%;transform:scale(1.15)}.project-detail-page{z-index:1;color:var(--base-100);--accent:var(--brand-blue);--accent-ink:color-mix(in srgb,var(--accent)72%,#101410);position:relative}.project-detail-page h1,.project-detail-page h2,.project-detail-page h3,.project-detail-page h4,.project-detail-page h5{color:var(--brand-white)}.project-detail-page p,.project-detail-page span,.project-detail-page a{color:var(--base-100)}.project-detail-page .section-label{color:var(--brand-white)}.project-detail-page .section-light{background-color:var(--base-100);color:var(--base-700)}.project-detail-page .section-light p,.project-detail-page .section-light span,.project-detail-page .section-light a{color:var(--base-600)}.project-detail-page .btn-pill,.project-detail-page .btn-pill span,.project-detail-page .section-light .btn-pill,.project-detail-page .section-light .btn-pill span{color:var(--brand-white)}.project-detail-page .section-light .section-label{color:var(--accent-ink)}.project-detail-page .section-light h1,.project-detail-page .section-light h2,.project-detail-page .section-light h3,.project-detail-page .section-light h4,.project-detail-page .section-light h5{color:var(--brand-blue)}.project-detail-page .section-light h1{color:var(--accent-ink)}.project-detail-hero{padding:12rem 0 4rem}.back-to-projects{align-self:flex-start;margin-bottom:.25rem}.project-hero-layout{grid-template-columns:1.5fr 1fr;align-items:center;gap:4rem;display:grid}.project-detail-header{flex-direction:column;gap:2rem;display:flex}.project-logo{background-color:var(--base-100);border:1px solid #afb3ab59;border-radius:.75rem;justify-content:center;align-items:center;width:5rem;height:5rem;padding:.75rem;display:flex;overflow:hidden}.project-logo img{object-fit:contain;width:100%;height:100%}.project-detail-page .section-light .project-eyebrow{color:var(--accent-ink);letter-spacing:-.01em}.project-detail-hero h1{font-size:clamp(2.75rem,5vw,5.5rem)}.project-intro{color:#edf1e8d9;max-width:640px;line-height:1.4}.project-meta-info{border-top:1px dashed #edf1e840;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem;margin-top:3rem;padding-top:2rem;display:flex}.section-light .project-meta-info{border-top-color:#7d807a66}.project-meta-items{flex-wrap:wrap;gap:4rem;display:flex}.meta-item{flex-direction:column;gap:.5rem;display:flex}.meta-label{color:#edf1e88c}.section-light .meta-label{color:var(--base-500)}.meta-value{color:var(--base-100)}.section-light .meta-value{color:var(--base-700)}.showcase-frame{aspect-ratio:16/10;border:1px solid #edf1e82e;border-radius:.75rem;position:relative;overflow:hidden}.showcase-frame img{object-fit:cover;will-change:transform;width:100%;height:120%}.project-detail-description{padding:4rem 0}.description-grid{grid-template-columns:1fr 2fr;gap:3rem;max-width:1200px;display:grid}.description-grid .bodyCopy{color:#edf1e8d9;max-width:70ch;line-height:1.5}.section-light .description-grid .bodyCopy{color:var(--base-600)}.project-detail-challenge{padding:4rem 0}.challenge-solution-grid{grid-template-columns:repeat(2,1fr);gap:2rem;max-width:1200px;display:grid}.challenge-item,.solution-item{background-color:#0f0f0f59;border:1px solid #edf1e824;border-radius:.75rem;flex-direction:column;gap:1.5rem;padding:2.5rem;display:flex}.challenge-item .bodyCopy,.solution-item .bodyCopy{color:#edf1e8d9;line-height:1.5}.project-detail-features{padding:4rem 0}.features-header{margin-bottom:3rem}.features-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;display:grid}.feature-group{background-color:#0f0f0f59;border:1px solid #edf1e824;border-radius:.75rem;padding:2.5rem}.section-light .feature-group{background-color:#ffffff8c;border-color:#afb3ab59}.feature-group-title{color:var(--base-100);margin-bottom:1.5rem}.project-detail-page .section-light .feature-group-title{color:var(--accent-ink)}.feature-list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.feature-list li{border-bottom:1px dashed #edf1e833;padding:0 0 1rem}.section-light .feature-list li{border-bottom-color:#7d807a4d}.feature-list li:last-child{border-bottom:none;padding-bottom:0}.feature-list .bodyCopy{color:#edf1e8d9}.section-light .feature-list .bodyCopy{color:var(--base-600)}.project-detail-technologies{padding:4rem 0}.technologies-header{margin-bottom:3rem}.technologies-list{flex-wrap:wrap;gap:1rem;max-width:1000px;display:flex}.tech-tag{background-color:#0f0f0f59;border:1px dashed #edf1e84d;border-radius:.5rem;padding:.75rem 1.5rem;transition:all .3s;display:inline-block}.tech-tag:hover{color:var(--brand-white);background-color:#0f0f0f99;border-color:#edf1e88c}.project-detail-gallery{padding:4rem 0}.gallery-header{margin-bottom:3rem}.gallery-grid{counter-reset:gallery-item;grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.gallery-item{counter-increment:gallery-item;background-color:var(--base-200);cursor:pointer;aspect-ratio:4/3;will-change:transform;border:1px solid #afb3ab66;border-radius:.75rem;position:relative;overflow:hidden}.gallery-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.4,0,.2,1);display:block}.gallery-item:after{content:"[ " counter(gallery-item,decimal-leading-zero)" ]";color:var(--base-100);font-family:var(--font-dm-mono),monospace;letter-spacing:-.01em;opacity:0;pointer-events:none;background:#0f0f0f73;justify-content:center;align-items:center;font-size:.85rem;transition:opacity .4s;display:flex;position:absolute;inset:0}.gallery-item:hover:after{opacity:1}.gallery-item:hover img{transform:scale(1.06)}.gallery-lightbox{z-index:1000;cursor:zoom-out;background:#0f0f0feb;justify-content:center;align-items:center;animation:.35s both lightbox-fade;display:flex;position:fixed;inset:0}.gallery-lightbox img{object-fit:contain;cursor:default;border-radius:.75rem;width:auto;max-width:88vw;height:auto;max-height:85svh;animation:.45s cubic-bezier(.4,0,.2,1) both lightbox-fit}@keyframes lightbox-fade{0%{opacity:0}}@keyframes lightbox-fit{0%{opacity:0;transform:scale(.92)translateY(20px)}}.gallery-lightbox button{color:var(--base-100);cursor:pointer;background:0 0;padding:1rem;position:absolute}.gallery-lightbox button:hover{color:var(--base-300)}.lightbox-close{font-size:1.25rem;top:1.5rem;right:1.5rem}.lightbox-nav{margin-top:-1.5rem;font-size:1.5rem;top:50%}.lightbox-prev{left:1.5rem}.lightbox-next{right:1.5rem}.lightbox-meta{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.lightbox-meta span{color:#edf1e8b3;letter-spacing:-.01em}.project-detail-navigation{border-top:1px dashed #edf1e840;padding:6rem 0 4rem}.project-detail-navigation .container{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.back-link{flex-shrink:0}.next-project{text-align:right;flex-direction:column;gap:1rem;max-width:60%;text-decoration:none;display:flex}.next-project h3{color:var(--base-100);transition:color .3s}.next-project:hover h3{color:var(--brand-white);opacity:.85}@media (max-width:1000px){.project-detail-hero{padding:9rem 0 3rem}.project-meta-items{gap:2rem}.description-grid{grid-template-columns:1fr;gap:1.5rem}.challenge-solution-grid{grid-template-columns:1fr}.project-hero-layout{grid-template-columns:1fr;gap:3rem}.showcase-frame{aspect-ratio:16/10}.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.project-meta-info{flex-direction:column;align-items:flex-start}.features-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.project-detail-navigation .container{flex-direction:column;align-items:flex-start}.next-project{text-align:left;max-width:100%}}
