@keyframes lightboxFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.d-none{display:none!important}.project-detail-section,.project-detail-section *{box-sizing:border-box}.project-detail-section{min-height:80vh;width:100%;padding:clamp(80px,10vh,140px) 20px 60px;max-width:900px;margin:0 auto;position:relative;overflow-x:hidden}.state-container{padding:clamp(50px,10vh,100px)0;width:100%;text-align:center}.error-card{width:clamp(100px,15vw,150px);height:clamp(100px,15vw,150px);display:flex;align-items:center;justify-content:center;margin:0 auto}.giant-icon{font-size:clamp(2.5rem,5vw,4rem);color:var(--text-main)}.project-header{margin-bottom:clamp(20px,4vh,40px);width:100%;text-align:left}.project-header .giant-text{font-size:clamp(1.8rem,6vw,3.5rem);line-height:1.1;word-wrap:break-word;overflow-wrap:break-word;margin:0}.project-description{font-size:clamp(1rem,2vw,1.15rem);line-height:1.8;color:var(--text-muted);max-width:100%;font-weight:500;margin-top:0;margin-bottom:clamp(30px,5vh,50px)}.project-meta-box{background:var(--card-bg);border:3px solid var(--text-main);border-radius:12px;padding:clamp(15px,3vw,25px);box-shadow:6px 6px 0 var(--shadow-color);display:flex;flex-direction:column;gap:15px;width:100%;margin-bottom:clamp(30px,5vh,50px)!important}.meta-row{display:flex;flex-direction:row;align-items:flex-start;gap:clamp(10px,2vw,20px);flex-wrap:wrap;width:100%}.meta-label{font-weight:800;font-size:.95rem;color:var(--text-main);text-transform:uppercase;letter-spacing:1px;padding-top:5px;flex:0 0 120px;min-width:120px}#project-year,.tech-list-container{flex:1 1 0;min-width:200px}.tech-list-container{display:flex;flex-wrap:wrap;gap:clamp(6px,1vw,10px);align-items:center}.tech-badge{padding:6px 16px;border:2px solid var(--text-main);background-color:var(--bg-main);color:var(--text-main);border-radius:50px;font-weight:700;font-size:.85rem;box-shadow:3px 3px 0 var(--shadow-color);white-space:nowrap}#project-link-section{width:100%;display:flex;justify-content:flex-start;margin-bottom:clamp(40px,8vh,80px)}.project-gallery{display:flex;flex-direction:column;gap:clamp(20px,5vh,40px);width:100%}.gallery-placeholder,.project-gallery img{width:100%;aspect-ratio:16/9;border-radius:12px}.project-gallery img{object-fit:cover;border:3px solid var(--text-main);box-shadow:clamp(6px,1.5vw,12px) clamp(6px,1.5vw,12px)0 var(--shadow-color);background-color:var(--card-bg);cursor:zoom-in;transition:transform .3s ease,box-shadow .3s ease}.project-gallery img:hover{transform:translateY(-5px);box-shadow:clamp(8px,1.8vw,15px) clamp(8px,1.8vw,15px)0 var(--shadow-color)}.gallery-placeholder{border:3px dashed var(--text-main);display:flex;font-weight:700;color:var(--text-muted);background-color:rgba(0,0,0,.02);padding:20px;text-align:center}.gallery-placeholder,.lightbox-content,.lightbox-modal{align-items:center;justify-content:center}.lightbox-modal{position:fixed;inset:0;background-color:#000;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);z-index:10000;display:none;opacity:0;transition:opacity .4s ease}.lightbox-modal.active{display:flex;opacity:1}.lightbox-content{position:relative;width:min(85%,1200px);aspect-ratio:16/9;display:flex;overflow:hidden;border:4px solid var(--text-main);background:#000;box-shadow:0 0 60px rgba(0,0,0,.8)}.lightbox-buffer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;cursor:zoom-out;opacity:0;transition:opacity .4s ease-in-out;z-index:1}.lightbox-buffer.active{opacity:1;z-index:2}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:var(--card-bg);color:var(--text-main);border:3px solid var(--text-main);width:clamp(50px,8vw,65px);height:clamp(50px,8vw,65px);font-size:clamp(1.2rem,2vw,1.8rem);cursor:pointer;z-index:10002;display:flex;align-items:center;justify-content:center;box-shadow:clamp(4px,1vw,6px) clamp(4px,1vw,6px)0 var(--shadow-color);transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease,opacity .3s ease}.lightbox-prev{left:clamp(15px,3vw,30px)}.lightbox-next{right:clamp(15px,3vw,30px)}.lightbox-nav:hover{background:var(--text-main);color:var(--card-bg);transform:translateY(-50%) translate(-2px,-2px);box-shadow:clamp(6px,1.2vw,8px) clamp(6px,1.2vw,8px)0 var(--shadow-color)}.lightbox-nav:active{background:var(--primary-color)!important;color:#fff!important;border-color:var(--primary-color)!important;transition:none;transform:translateY(-50%) translate(clamp(4px,1vw,6px),clamp(4px,1vw,6px));box-shadow:0 0 0 transparent}.lightbox-close,.lightbox-counter{position:absolute;color:#fff;background:rgba(255,255,255,.1);backdrop-filter:blur(5px)}.lightbox-counter{transition:opacity .3s ease}.lightbox-close{top:clamp(15px,3vw,30px);right:clamp(15px,3vw,30px);border:0;width:50px;height:50px;border-radius:50%;font-size:1.8rem;cursor:pointer;z-index:10003;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease,opacity .3s ease}.lightbox-close:hover{background:rgba(255,255,255,.2);transform:rotate(90deg)}.lightbox-counter{bottom:clamp(15px,3vw,30px);left:50%;transform:translateX(-50%);font-weight:700;font-size:.9rem;letter-spacing:2px;padding:8px 20px;border-radius:20px}.ui-hidden{opacity:0!important;pointer-events:none!important}@media (max-width:768px){.project-detail-section{padding-top:80px;padding-bottom:40px}.project-header{text-align:center;display:flex;flex-direction:column;align-items:center}.project-header .neo-heading{position:relative;display:inline-block}.project-header .neo-heading::after{left:50%;transform:translateX(-50%)}.meta-row{flex-direction:column;gap:5px;align-items:flex-start}.meta-label{flex:0 0 auto;min-width:auto;width:100%;margin-bottom:3px}#project-year,.tech-list-container{width:100%;min-width:100%}#project-link-section{justify-content:center}#project-link-section .btn{width:100%;justify-content:center}.lightbox-content{width:95%;aspect-ratio:auto;min-height:40vh;max-height:70vh}.lightbox-buffer{position:relative;max-height:70vh;width:100%;height:auto}#lightbox-img-next{position:absolute;inset:0;height:100%}.lightbox-nav{top:auto;bottom:clamp(15px,3vw,30px);transform:none}.lightbox-prev{left:50%;transform:translateX(-70px)}.lightbox-next{right:50%;transform:translateX(70px)}.lightbox-nav:hover{transform:translateY(-2px)}.lightbox-prev:hover{transform:translateX(-70px) translateY(-2px)}.lightbox-next:hover{transform:translateX(70px) translateY(-2px)}.lightbox-nav:active{transform:translate(2px,2px)}.lightbox-prev:active{transform:translateX(-68px) translateY(2px)}.lightbox-next:active{transform:translateX(72px) translateY(2px)}.lightbox-counter{bottom:auto;top:clamp(15px,3vw,30px);left:clamp(15px,3vw,30px);transform:none}}