.project-detail-section{padding:40px 7rem 24px}.back-to-projects{height:36px;color:var(--text-secondary);background:color-mix(in srgb, var(--background-card) 75%, transparent);border:1px solid var(--border);border-radius:10px;align-items:center;gap:8px;margin-bottom:32px;padding:0 14px;font-size:.85rem;font-weight:500;text-decoration:none;transition:color .2s,border-color .2s;display:inline-flex}.back-to-projects:hover{color:var(--primary);border-color:rgba(var(--primary-rgb), .6)}.back-to-projects .back-icon{color:var(--primary);font-size:1rem}.project-detail-header{max-width:860px;margin-bottom:32px}.project-detail-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.project-meta-pill{color:var(--primary);background:var(--primary-light);border:1px solid rgba(var(--primary-rgb), .3);border-radius:999px;padding:4px 12px;font-size:.8rem;font-weight:500}.project-meta-pill--link{text-decoration:none;transition:background-color .2s,border-color .2s}.project-meta-pill--link:hover{border-color:rgba(var(--primary-rgb), .6);background:rgba(var(--primary-rgb), .18)}.project-meta-pill--team{color:var(--text-secondary);background:var(--overlay);border-color:var(--border)}.project-meta-date{color:var(--text-muted);font-size:.85rem}.project-detail-title{letter-spacing:-.035em;color:var(--text);font-size:clamp(2rem,1.4rem + 2.2vw,3rem);font-weight:700;line-height:1.12}.project-detail-subtitle{color:var(--text-secondary);margin-top:14px;font-size:1.15rem;line-height:1.6}.project-action-buttons{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.project-detail-hero{aspect-ratio:16/9;background:var(--background-card);border:1px solid var(--border);width:100%;max-height:560px;box-shadow:0 30px 80px -40px rgba(var(--primary-rgb), .45);border-radius:20px;margin-bottom:56px;position:relative;overflow:hidden}.project-hero-zoom{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.project-hero-zoom:focus-visible{outline:2px solid var(--primary);outline-offset:-4px}.project-detail-hero .image-container,.project-detail-hero .project-hero-image{width:100%;height:100%}.project-detail-hero img,.project-detail-hero .lazy-image{object-fit:cover;object-position:top center;width:100%!important;height:100%!important}.case-study-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:48px;margin-bottom:56px;display:grid}.case-study-main{flex-direction:column;gap:40px;min-width:0;display:flex}.case-study-heading{letter-spacing:-.02em;color:var(--text);margin-bottom:14px;font-size:1.4rem;font-weight:600}.case-study-lead{color:var(--text-secondary);font-size:1.125rem;line-height:1.8}.case-study-content{flex-direction:column;gap:16px;display:flex}.case-study-content .case-study-heading{margin:16px 0 0}.case-study-content .case-study-heading:first-child{margin-top:0}.case-study-paragraph{color:var(--text-secondary);font-size:1.025rem;line-height:1.8}.case-study-list{flex-direction:column;gap:10px;list-style:none;display:flex}.case-study-list li{color:var(--text-secondary);padding-left:20px;font-size:1rem;line-height:1.65;position:relative}.case-study-list li:before{content:"";background:var(--gradient);border-radius:2px;width:7px;height:7px;position:absolute;top:.62em;left:0}.feature-grid{grid-template-columns:repeat(2,1fr);gap:12px;list-style:none;display:grid}.feature-card{color:var(--text);background:var(--background-card);border:1px solid var(--border);border-radius:var(--radius);align-items:flex-start;gap:12px;padding:16px 18px;font-size:.95rem;line-height:1.55;transition:border-color .2s;display:flex}.feature-card:hover{border-color:rgba(var(--primary-rgb), .5)}.feature-check{width:22px;height:22px;color:var(--button-text);background:var(--gradient);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:.8rem;display:inline-flex}.case-study-stats{background:var(--background-card);border:1px solid var(--border);border-radius:var(--radius-lg);grid-template-columns:repeat(4,1fr);margin-top:8px;display:grid;overflow:hidden}.case-study-stat{flex-direction:column;gap:4px;padding:20px;display:flex}.case-study-stat+.case-study-stat{border-left:1px solid var(--border)}.case-study-stat-value{letter-spacing:-.02em;background:var(--gradient-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.35rem;font-weight:700}.case-study-stat-label{color:var(--text-secondary);font-size:.85rem}.case-study-sidebar{position:sticky;top:96px}.project-facts{background:var(--background-card);border:1px solid var(--border);border-radius:var(--radius-lg);margin:0;overflow:hidden}.project-fact{padding:16px 20px}.project-fact+.project-fact{border-top:1px solid var(--border)}.project-fact dt{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-size:.75rem;font-weight:500}.project-fact dd{color:var(--text);margin:0;font-size:.95rem}.project-tech-list{flex-wrap:wrap;gap:6px;margin-top:6px;list-style:none;display:flex}.project-tech-list li{font-family:var(--font-mono);color:var(--text-secondary);background:var(--overlay);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:.75rem}.project-gallery-section{margin-bottom:56px}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.gallery-item{cursor:zoom-in;background:var(--background-card);border:1px solid var(--border);border-radius:var(--radius);width:100%;padding:0;transition:border-color .2s,box-shadow .2s;display:block;overflow:hidden}.gallery-item:hover,.gallery-item:focus-visible{border-color:rgba(var(--primary-rgb), .5);box-shadow:var(--glow)}.gallery-image-container{aspect-ratio:16/10;background:var(--background-secondary);width:100%;position:relative;overflow:hidden}.gallery-skeleton{background:var(--background-hover);z-index:1;position:absolute;inset:0;overflow:hidden}.gallery-skeleton .skeleton-shimmer{background:linear-gradient(90deg, transparent 0%, var(--overlay) 50%, transparent 100%);width:100%;height:100%;animation:1.5s infinite shimmerGallery;position:absolute;top:0;left:-100%}@keyframes shimmerGallery{0%{left:-100%}to{left:100%}}.gallery-img{object-fit:cover;object-position:top center;opacity:0;z-index:2;width:100%;height:100%;transition:opacity .3s,transform .5s;display:block;position:relative}.gallery-img.loaded{opacity:1}.gallery-item:hover .gallery-img.loaded{transform:scale(1.04)}.lightbox{z-index:9999;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#05060af0;flex-direction:column;display:flex;position:fixed;inset:0}.lightbox-top{align-items:center;gap:14px;padding:16px 20px;display:flex}.lightbox-counter{font-family:var(--font-mono);background:#ffffff14;border:1px solid #ffffff24;border-radius:999px;padding:4px 12px;font-size:.8rem}.lightbox-title{color:#ffffffbf;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.95rem;font-weight:500;overflow:hidden}.lightbox-close-wrap{margin-left:auto}.lightbox-icon-btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff24;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.35rem;transition:background-color .2s,border-color .2s,opacity .2s;display:inline-flex}.lightbox-icon-btn:hover:not(:disabled){background:#ffffff29;border-color:#ffffff4d}.lightbox-icon-btn:disabled{opacity:.35;cursor:default}.lightbox-icon-btn--sm{border-radius:10px;width:34px;height:34px;font-size:1.1rem}.lightbox-stage{flex:1;align-items:center;gap:16px;min-height:0;padding:0 20px;display:flex;position:relative}.lightbox-viewport{touch-action:none;-webkit-user-select:none;user-select:none;cursor:zoom-in;flex:1;height:100%;position:relative;overflow:hidden}.lightbox-viewport.is-zoomed{cursor:grab}.lightbox-viewport.is-dragging{cursor:grabbing}.lightbox-slide{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lightbox-zoom{will-change:transform;justify-content:center;align-items:center;width:100%;height:100%;transition:transform .25s cubic-bezier(.22,1,.36,1);display:flex}.lightbox-viewport.is-dragging .lightbox-zoom{transition:none}.lightbox-zoom img{object-fit:contain;pointer-events:none;border-radius:12px;width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:0 30px 80px -20px #000000b3}.lightbox-arrow{z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.6rem;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s;display:flex;position:relative}.lightbox-arrow:hover{background:var(--gradient);box-shadow:0 10px 30px -8px rgba(var(--primary-rgb), .7);border-color:#0000;transform:scale(1.06)}.lightbox-arrow:active{transform:scale(.96)}.lightbox-bottom{flex-direction:column;align-items:center;gap:12px;padding:14px 20px 16px;display:flex}.lightbox-zoom-bar{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;align-items:center;gap:10px;padding:6px 10px;display:flex}.lightbox-zoom-value{min-width:44px;font-family:var(--font-mono);text-align:center;color:#fffc;font-size:.8rem}.lightbox-reset-btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff24;border-radius:10px;align-items:center;gap:6px;height:34px;padding:0 12px;font-size:.8rem;font-weight:500;transition:background-color .2s,border-color .2s,opacity .2s;display:inline-flex}.lightbox-reset-btn:hover:not(:disabled){background:#ffffff29;border-color:#ffffff4d}.lightbox-reset-btn:disabled{opacity:.35;cursor:default}.lightbox-zoom-slider{appearance:none;background:linear-gradient(90deg, var(--primary) var(--fill,0%), #ffffff2e var(--fill,0%));cursor:pointer;border-radius:999px;width:160px;height:4px}.lightbox-zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;box-shadow:0 0 0 4px rgba(var(--primary-rgb), .35);background:#fff;border:0;border-radius:50%;transition:transform .15s}.lightbox-zoom-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.lightbox-zoom-slider::-moz-range-thumb{width:16px;height:16px;box-shadow:0 0 0 4px rgba(var(--primary-rgb), .35);background:#fff;border:0;border-radius:50%}.lightbox-thumbs{overscroll-behavior-x:contain;scroll-snap-type:x proximity;touch-action:pan-x;scrollbar-width:none;gap:10px;width:100%;padding:6px 28px;scroll-padding-inline:28px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000)}.lightbox-thumb:first-child{margin-left:auto}.lightbox-thumb:last-child{margin-right:auto}.lightbox-thumbs::-webkit-scrollbar{display:none}.lightbox-thumb{scroll-snap-align:center;cursor:pointer;opacity:.5;background:#ffffff0d;border:2px solid #0000;border-radius:10px;flex-shrink:0;width:88px;height:56px;padding:0;transition:opacity .2s,border-color .2s,transform .2s;overflow:hidden}.lightbox-thumb img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.lightbox-thumb:hover{opacity:.85;transform:translateY(-2px)}.lightbox-thumb.is-active{opacity:1;border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb), .25)}.lightbox-copyright{color:#fff6;margin:0;font-size:.75rem}.lightbox :focus-visible{outline:2px solid var(--primary);outline-offset:2px}.related-projects-section{border-top:1px solid var(--border);padding-top:40px}.related-projects-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (max-width:1100px){.case-study-layout{grid-template-columns:1fr;gap:32px}.case-study-sidebar{position:static}.related-projects-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.project-detail-section{padding:1.5rem 1rem 16px}.project-detail-subtitle{font-size:1.025rem}.project-action-buttons .btn:not(.webshare-button){flex:auto}.project-detail-hero{border-radius:14px;margin-bottom:36px}.feature-grid,.related-projects-grid,.gallery-grid{grid-template-columns:1fr}.case-study-stats{grid-template-columns:repeat(2,1fr)}.case-study-stat:nth-child(3){border-left:none}.case-study-stat:nth-child(n+3){border-top:1px solid var(--border)}.lightbox-top{padding:12px}.lightbox-stage{padding:0 8px}.lightbox-arrow{background:#05060a99;width:42px;height:42px;font-size:1.25rem;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-arrow:hover,.lightbox-arrow:active{transform:translateY(-50%)}.lightbox-arrow--prev{left:12px}.lightbox-arrow--next{right:12px}.lightbox-zoom-slider{width:110px}.lightbox-thumb{width:64px;height:42px}.lightbox-bottom{padding-inline:0}}
