.project-container{flex:1;overflow-y:auto;overflow-x:hidden;height:100%;scroll-behavior:smooth;margin:0 auto}@media (min-width: 768px){.project-container{margin:0 auto}}.project-gallery{position:relative}.project-image-wrapper{position:relative;overflow:hidden;border-radius:4px;background-color:#f8f9fa;margin-bottom:2rem;transition:transform .3s cubic-bezier(.4,0,.2,1)}.project-image-wrapper:hover .image-overlay{opacity:1}.project-image-wrapper:hover .project-image{transform:scale(1.02)}.project-image{width:100%;height:auto;display:block;transition:transform .5s cubic-bezier(.4,0,.2,1);cursor:pointer}.image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1);pointer-events:none}.btn-expand{background:#fffffff2;border:none;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:all;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-expand i{color:#000;font-size:1.2rem}.btn-expand:hover{transform:scale(1.1);background:#fff;box-shadow:0 4px 12px #0003}.project-sidebar{width:75%;background:#fff;border-radius:8px}@media (min-width: 1200px){.project-sidebar{padding:0;margin-left:0;margin-right:0}}.project-header{padding-bottom:1.5rem;border-bottom:1px solid #dee2e6}.project-title{font-size:1.75rem;font-weight:700;line-height:1.3;margin-bottom:1.7rem;color:#000}@media (min-width: 768px){.project-title{font-size:1.3rem}}.project-category-badge .badge{background-color:#000;color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.75rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase;display:inline-block}.project-meta{padding:1.5rem 0}.meta-item{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(222,226,230,.5)}.meta-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.meta-label{font-size:.75rem;color:#b1b1b1;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.meta-value{font-size:.95rem;color:#000;font-weight:400}.project-description{line-height:1.8;color:#b1b1b1}.project-description p{margin-bottom:1rem;font-size:.95rem}.project-description ul,.project-description ol{margin-left:1.5rem;margin-bottom:1rem}.project-description ul li,.project-description ol li{margin-bottom:.5rem;font-size:.95rem}.project-description strong{color:#000;font-weight:600}.project-description a{color:#000;text-decoration:underline;transition:color .2s ease}.project-description a:hover{color:#2d3748}.project-share{border-color:#dee2e680!important}.share-label{font-size:.75rem;color:#b1b1b1;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin-bottom:1rem}.share-buttons{display:flex;gap:.75rem}.btn-share{width:40px;height:40px;border-radius:50%;background-color:#000;color:#fff;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-share i{font-size:.9rem}.btn-share:hover{background-color:#2d3748;transform:translateY(-3px);box-shadow:0 4px 12px #0003}.btn-back{padding:.75rem 2.5rem;background-color:#000;color:#fff;border:none;border-radius:2px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-back:hover{background-color:#1a1a1a;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.btn-back:active{transform:translateY(0);box-shadow:0 2px 4px #0003}.btn-back:disabled{opacity:.5;cursor:not-allowed;transform:none}.related-projects{margin-top:4rem}.section-title{font-size:1.5rem;font-weight:700;color:#000;margin-bottom:2rem}.related-project-card{display:block;text-decoration:none;color:inherit;transition:transform .3s cubic-bezier(.4,0,.2,1)}.related-project-card:hover{transform:translateY(-5px)}.related-project-card:hover .card-image-wrapper img{transform:scale(1.05)}.related-project-card:hover .card-title{color:#000}.card-image-wrapper{position:relative;overflow:hidden;border-radius:4px;background-color:#f8f9fa;aspect-ratio:4/3;margin-bottom:1rem}.card-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.4,0,.2,1)}.card-content{padding:.5rem 0}.card-title{font-size:1.1rem;font-weight:600;color:#2d3748;margin-bottom:.25rem;transition:color .3s ease}.card-location{font-size:.85rem;color:#b1b1b1;margin-bottom:0}.lightbox-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;z-index:99999;display:none;align-items:center;justify-content:center;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.lightbox-modal.active{display:flex;opacity:1}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}.lightbox-content img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:4px}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background:#ffffff1a;border:2px solid rgba(255,255,255,.5);color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:100000}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:#fff3;border-color:#fff;transform:scale(1.1)}.lightbox-close i,.lightbox-prev i,.lightbox-next i{font-size:1.2rem}.lightbox-close{top:20px;right:20px}.lightbox-prev{left:20px;top:50%;transform:translateY(-50%)}.lightbox-prev:hover{transform:translateY(-50%) scale(1.1)}.lightbox-next{right:20px;top:50%;transform:translateY(-50%)}.lightbox-next:hover{transform:translateY(-50%) scale(1.1)}.lightbox-caption{color:#fff;text-align:center;margin-top:1rem;font-size:.95rem}.lightbox-counter{color:#ffffffb3;text-align:center;margin-top:.5rem;font-size:.85rem}@media (max-width: 1199px){.project-sidebar{position:static!important;margin-top:2rem}}@media (max-width: 768px){.project-image-wrapper{margin-bottom:1.5rem}.project-sidebar{padding:1rem}.project-title{font-size:1.5rem}.lightbox-prev,.lightbox-next{width:40px;height:40px}.lightbox-prev i,.lightbox-next i{font-size:1rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.project-image{opacity:0}.project-image.fade-img-proj{animation:fadeInUp .6s ease-out forwards}@media (min-width: 1200px){.sticky-xl-top{position:sticky;transition:top .3s cubic-bezier(.4,0,.2,1)}}
