.portfolio-page[data-astro-cid-hcjuqwdu]{max-width:1200px;margin:0 auto;padding:4rem 1.5rem}.portfolio-hero[data-astro-cid-hcjuqwdu]{margin-bottom:3rem}.portfolio-header[data-astro-cid-hcjuqwdu]{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.portfolio-hero[data-astro-cid-hcjuqwdu] h1[data-astro-cid-hcjuqwdu]{font-size:2.5rem;font-weight:700;margin:0;color:var(--text-color)}.lead[data-astro-cid-hcjuqwdu]{font-size:1.25rem;color:var(--text-light);line-height:1.6;margin:0}.portfolio-grid[data-astro-cid-hcjuqwdu]{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:2rem}.portfolio-item[data-astro-cid-hcjuqwdu]{text-decoration:none;color:inherit;display:block;transition:transform .3s ease}.portfolio-item[data-astro-cid-hcjuqwdu]:hover{transform:translateY(-4px)}.portfolio-image[data-astro-cid-hcjuqwdu]{position:relative;width:100%;height:260px;overflow:hidden;border-radius:0;display:flex;align-items:center;justify-content:center}.portfolio-placeholder[data-astro-cid-hcjuqwdu]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);position:relative}html.dark .portfolio-placeholder[data-astro-cid-hcjuqwdu]{background:linear-gradient(135deg,#1e1e28,#32324e)}.portfolio-image[data-astro-cid-hcjuqwdu].fallback:after{content:"shupp.dev";font-size:2rem;font-weight:500;font-family:var(--font-main-header);color:#ffffffe6;letter-spacing:.15em;text-transform:lowercase;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1}html.dark .portfolio-image[data-astro-cid-hcjuqwdu].fallback:after{color:#fffc}.portfolio-image[data-astro-cid-hcjuqwdu].fallback{background:linear-gradient(135deg,#667eea,#764ba2);position:relative}html.dark .portfolio-image[data-astro-cid-hcjuqwdu].fallback{background:linear-gradient(135deg,#1e1e28,#32324e)}.placeholder-logo[data-astro-cid-hcjuqwdu]{font-size:2rem;font-weight:500;font-family:var(--font-main-header);color:#ffffffe6;letter-spacing:.15em;text-transform:lowercase;position:relative;z-index:1}html.dark .placeholder-logo[data-astro-cid-hcjuqwdu]{color:#fffc}.portfolio-preview-img[data-astro-cid-hcjuqwdu]{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .6s ease,filter .3s ease}.portfolio-item[data-astro-cid-hcjuqwdu]:hover .portfolio-preview-img[data-astro-cid-hcjuqwdu],.portfolio-item[data-astro-cid-hcjuqwdu]:hover .portfolio-placeholder[data-astro-cid-hcjuqwdu]{transform:scale(1.05);filter:blur(2px)}.portfolio-item[data-astro-cid-hcjuqwdu]:hover .portfolio-image[data-astro-cid-hcjuqwdu].fallback:after{transform:translate(-50%,-50%) scale(1.05);filter:blur(2px)}.portfolio-overlay[data-astro-cid-hcjuqwdu]{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#acc196eb,#799496eb);opacity:0;transition:opacity .3s ease;display:flex;align-items:center;justify-content:center;padding:2rem;backdrop-filter:blur(4px)}html.dark .portfolio-overlay[data-astro-cid-hcjuqwdu]{background:linear-gradient(135deg,#14080ef5,#49475bf5);backdrop-filter:blur(6px)}.portfolio-item[data-astro-cid-hcjuqwdu]:hover .portfolio-overlay[data-astro-cid-hcjuqwdu]{opacity:1}.overlay-content[data-astro-cid-hcjuqwdu]{text-align:center;max-width:90%}.overlay-title[data-astro-cid-hcjuqwdu]{font-size:1.6rem;font-weight:800;margin-bottom:.75rem;color:var(--color-dark);text-shadow:0 2px 4px rgba(255,255,255,.5);letter-spacing:-.5px}html.dark .overlay-title[data-astro-cid-hcjuqwdu]{color:var(--color-light);text-shadow:0 2px 8px rgba(0,0,0,.7)}.overlay-description[data-astro-cid-hcjuqwdu]{font-size:.95rem;line-height:1.6;margin-bottom:1.5rem;color:var(--color-dark);font-weight:500}html.dark .overlay-description[data-astro-cid-hcjuqwdu]{color:#f3f4f6}.overlay-date[data-astro-cid-hcjuqwdu]{display:inline-block;font-size:.8rem;font-weight:700;color:var(--color-dark);background:var(--color-light);padding:.5rem 1rem;border-radius:20px;margin-top:1rem;box-shadow:0 4px 12px #14080e33}html.dark .overlay-date[data-astro-cid-hcjuqwdu]{color:var(--color-dark);background:var(--color-light);box-shadow:0 4px 12px #e9eb9e26}.portfolio-info[data-astro-cid-hcjuqwdu]{padding:1.25rem 1.5rem}.portfolio-title[data-astro-cid-hcjuqwdu]{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--text-color)}.portfolio-tech-summary[data-astro-cid-hcjuqwdu]{font-size:.9rem;color:var(--text-light);line-height:1.5;margin:0;font-weight:400}html.dark .portfolio-tech-summary[data-astro-cid-hcjuqwdu]{color:#9ca3af}@media(max-width:768px){.portfolio-page[data-astro-cid-hcjuqwdu]{padding:3rem 1rem}.portfolio-header[data-astro-cid-hcjuqwdu]{flex-direction:column;text-align:center}.portfolio-hero[data-astro-cid-hcjuqwdu] h1[data-astro-cid-hcjuqwdu]{font-size:2rem}.portfolio-grid[data-astro-cid-hcjuqwdu]{grid-template-columns:1fr;gap:1.5rem}.portfolio-image[data-astro-cid-hcjuqwdu]{height:220px}.overlay-title[data-astro-cid-hcjuqwdu]{font-size:1.25rem}.overlay-description[data-astro-cid-hcjuqwdu]{font-size:.9rem}}
