.project-page{margin:clamp(1.5rem,4vw,4rem);color:var(--primary)}.projects-section{display:flex;flex-direction:column;justify-content:center;gap:2rem;padding:clamp(.5rem,1vw,.75rem) clamp(.25rem,1vw,1rem)}.projects-container{max-width:100%}.projects-header{text-align:center;margin-bottom:clamp(2rem,4vw,3rem)}.projects-title{font-size:clamp(2rem,5vw,3rem);font-weight:700;color:var(--primary);margin:0}.projects-grid{display:flex;gap:1.5rem;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--accent) var(--muted)}.projects-grid.scrollable{overflow-x:auto;scroll-snap-type:x mandatory;padding:.5rem 2rem 1rem;margin:0 -2rem}.projects-grid.centered{justify-content:center;flex-wrap:wrap;padding:.5rem 0 1rem}.projects-grid::-webkit-scrollbar{height:8px}.projects-grid::-webkit-scrollbar-track{background:var(--muted);border-radius:4px}.projects-grid::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px}.projects-grid::-webkit-scrollbar-thumb:hover{background:var(--primary)}.project-card{flex:0 0 calc((100% - 3rem) / 3 - 40px);min-width:280px;scroll-snap-align:center;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--card-border);border-radius:12px;padding:clamp(1.25rem,3vw,1.5rem);transition:transform .3s ease,box-shadow .4s ease,border-color .3s ease;display:flex;flex-direction:column;gap:1rem;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:0;transition:opacity .4s ease}.project-card:hover:before{opacity:1}.project-card:first-child{animation-delay:.1s}.project-card:nth-child(2){animation-delay:.15s}.project-card:nth-child(3){animation-delay:.2s}.project-card:nth-child(4){animation-delay:.25s}.project-card:nth-child(5){animation-delay:.3s}.project-card:nth-child(6){animation-delay:.35s}.project-card:hover{transform:translateY(-6px);box-shadow:var(--card-hover-shadow);border-color:var(--accent)}.project-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.project-card-title-section{flex:1}.project-card-title{font-family:var(--font-display,system-ui);font-size:1.25rem;margin:0 0 .25rem;font-weight:600;color:var(--primary);letter-spacing:var(--tracking-tight)}.project-card-period{font-size:.85rem;color:var(--foreground);margin:0}.project-details-button{display:flex;align-items:center;gap:.4rem;background:transparent;border:none;color:var(--primary);cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem;border-radius:6px;transition:background .2s ease;position:relative}.project-details-button:hover{background:var(--hover-background)}.details-indicator{width:8px;height:8px;background:var(--accent);border-radius:50%;box-shadow:0 0 8px var(--accent-glow);animation:accentPulse 2s ease-in-out infinite}@keyframes accentPulse{0%{opacity:.7;box-shadow:0 0 4px var(--accent-glow)}50%{opacity:1;box-shadow:0 0 12px var(--accent-glow-strong)}to{opacity:.7;box-shadow:0 0 4px var(--accent-glow)}}.projects-carousel-section{padding:clamp(1.5rem,4vw,4rem) clamp(1.5rem,4vw,4rem) 0}.projects-carousel-title{font-family:var(--font-display,system-ui);font-size:clamp(2rem,5vw,3rem);font-weight:700;color:var(--primary);margin:0 0 clamp(1.5rem,3vw,2.5rem);letter-spacing:var(--tracking-tight)}.projects-carousel{display:flex;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding:.5rem .25rem 1.5rem;scrollbar-width:thin;scrollbar-color:var(--accent) transparent}.projects-carousel::-webkit-scrollbar{height:4px}.projects-carousel::-webkit-scrollbar-track{background:transparent}.projects-carousel::-webkit-scrollbar-thumb{background:var(--accent);border-radius:2px}.carousel-card{flex:0 0 clamp(280px,35vw,380px);scroll-snap-align:start}.project-card-content{display:flex;flex-direction:column;gap:1rem;flex:1}.project-features{list-style-position:inside;list-style-type:disc;padding-left:0;margin:0;color:var(--foreground);line-height:1.8;font-size:.95rem;flex-grow:1}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto}.project-tag{font-family:var(--font-mono);background:transparent;color:var(--accent);border:1px solid var(--border);padding:.2rem .6rem;border-radius:4px;font-size:.75rem;font-weight:400;letter-spacing:.02em}.project-card-actions{display:flex;gap:.75rem;margin-top:auto;flex-wrap:wrap}.project-action-button{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:6px;font-weight:600;text-decoration:none;transition:all .2s ease;font-size:.9rem;border:1px solid var(--border)}.project-action-code{background:transparent;color:var(--accent);border-color:var(--accent)}.project-action-code:hover{background:var(--accent);color:var(--accent-foreground);box-shadow:0 0 16px var(--accent-glow);transform:translateY(-2px)}.project-action-demo{background:transparent;color:var(--text-secondary);border-color:var(--border-strong)}.project-action-demo:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}@media (max-width:1024px){.project-card{flex:0 0 calc((100% - 1.5rem) / 2 - 30px);min-width:260px}}@media (max-width:768px){.project-page{margin:1.5rem 1rem}.projects-grid{gap:1.25rem}.project-card{flex:0 0 80%;min-width:240px}.project-card-header{flex-direction:column;align-items:flex-start;gap:.75rem}.project-details-button{align-self:flex-end}.project-card-actions{flex-direction:row;flex-wrap:wrap}.project-action-button{flex:1;min-width:130px;justify-content:center}.project-features{font-size:.9rem;line-height:1.7}}@media (max-width:480px){.project-page{margin:1rem}.project-card{padding:1rem}.project-card-title{font-size:1.25rem}.project-card-actions{flex-direction:column}.project-action-button{width:100%;min-width:auto}.project-tags{gap:.4rem}.project-tag{font-size:.75rem;padding:.25rem .5rem}}