.projects-section{width:100%;padding:120px 0;position:relative}.section-header{text-align:center;margin-bottom:5rem}.client-section-header{margin-top:10rem;margin-bottom:4rem}.section-badge{color:var(--primary-500);letter-spacing:1px;text-transform:uppercase;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50px;margin-bottom:1rem;padding:6px 16px;font-size:.85rem;font-weight:600;display:inline-block}.section-title{color:var(--text-color);letter-spacing:-.5px;margin-bottom:12px;font-size:2.5rem;font-weight:800}.section-subtitle{color:var(--text-secondary);opacity:.8;max-width:600px;margin:0 auto;font-size:1.1rem;line-height:1.6}.projects-list{width:100%;max-width:1000px;margin:0 auto;display:block}.project-card{box-sizing:border-box;background:#111;border:1px solid #ffffff14;border-radius:24px;flex-direction:row;align-items:stretch;gap:40px;width:100%;padding:40px;text-decoration:none;transition:background .4s,border-color .4s,box-shadow .4s;display:flex;position:relative;overflow:hidden;box-shadow:0 -10px 30px #0000004d,0 20px 40px #0006}[data-theme=light] .project-card{background:#f5f5f5;border-color:#00000014}.project-card:hover{background:#161616;border-color:#fff3;box-shadow:0 20px 40px #0006}[data-theme=light] .project-card:hover{background:#eee;border-color:#00000026;box-shadow:0 20px 40px #00000014}.project-content{z-index:2;flex-direction:column;flex:1.2;min-width:0;display:flex}.project-subtitle{color:var(--primary-500);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:10px;font-size:.8rem;font-weight:600;display:block}.project-title{color:var(--text-color);letter-spacing:-.5px;margin-bottom:14px;font-size:1.8rem;font-weight:800;line-height:1.2}.project-description{color:var(--text-secondary);opacity:.8;margin-bottom:24px;font-size:1.05rem;line-height:1.65}.project-footer{justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:20px;display:flex}.project-tags{flex-wrap:wrap;gap:8px;display:flex}.project-tag{color:var(--text-secondary);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;padding:6px 14px;font-size:.75rem;font-weight:500}[data-theme=light] .project-tag{background:#0000000a;border-color:#0000001a}.project-cta-minimal{width:44px;height:44px;color:var(--text-color);background:#ffffff05;border:1px solid #ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .3s;display:flex}[data-theme=light] .project-cta-minimal{background:#00000008;border-color:#0000001a}.project-card:hover .project-cta-minimal{background:var(--primary-500);border-color:var(--primary-500);color:#000;transform:translate(5px)}.project-preview{z-index:2;flex:1;justify-content:center;align-items:center;min-width:320px;display:flex}.project-preview-browser{background:#0a0a0a;border:1px solid #ffffff14;border-radius:12px;width:100%;transition:transform .4s,box-shadow .4s;overflow:hidden;box-shadow:0 8px 32px #0000004d}[data-theme=light] .project-preview-browser{background:#fff;border-color:#0000001a;box-shadow:0 8px 32px #00000014}.project-card:hover .project-preview-browser{transform:scale(1.02);box-shadow:0 12px 40px #0006}.preview-browser-bar{background:#1a1a1a;border-bottom:1px solid #ffffff0f;align-items:center;gap:6px;padding:8px 12px;display:flex}[data-theme=light] .preview-browser-bar{background:#e8e8e8;border-bottom-color:#00000014}.preview-dot{background:#ffffff26;border-radius:50%;width:8px;height:8px}.preview-dot:first-child{background:#ff5f57}.preview-dot:nth-child(2){background:#febc2e}.preview-dot:nth-child(3){background:#28c840}.preview-url{color:#ffffff59;font-size:.65rem;font-family:var(--font-body);letter-spacing:.3px;text-overflow:ellipsis;white-space:nowrap;margin-left:8px;overflow:hidden}[data-theme=light] .preview-url{color:#0006}.preview-iframe-wrap{aspect-ratio:16/10;width:100%;position:relative;overflow:hidden}.preview-iframe-wrap img{object-fit:cover;width:100%;height:100%;display:block}@media screen and (max-width:900px){.project-card{flex-direction:column;gap:30px;padding:30px 24px}.project-preview{display:none!important}.project-title{font-size:1.6rem}.client-section-header{margin-top:6rem}}.preview-fallback-placeholder{color:var(--text-secondary);background:radial-gradient(circle,#222 0%,#111 100%);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}[data-theme=light] .preview-fallback-placeholder{background:radial-gradient(circle,#fff 0%,#f0f0f0 100%)}.fallback-tech-icon{color:var(--primary-500);font-size:2rem;animation:2s ease-in-out infinite pulse}.fallback-text{letter-spacing:.5px;text-transform:uppercase;opacity:.7;font-size:.85rem;font-weight:500}.preview-loading-spinner{z-index:1;background:#111;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}[data-theme=light] .preview-loading-spinner{background:#f5f5f5}.spinner{border:2px solid #ffffff1a;border-top-color:var(--primary-500);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}[data-theme=light] .spinner{border-color:#0000000d;border-top-color:var(--primary-500)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}
.scroll-stack-scroller{width:100%;position:relative}.scroll-stack-inner{width:100%;padding-bottom:40vh;position:relative}.scroll-stack-card{transform-origin:top;will-change:transform;backface-visibility:hidden;box-sizing:border-box;width:100%;position:relative}.scroll-stack-end{width:100%;height:1px}
