*{margin:0;padding:0;box-sizing:border-box}:root{--background:#fff;--foreground:#475569;--card:#f1f5f9;--card-foreground:#475569;--primary:#059669;--primary-foreground:#fff;--secondary:#10b981;--secondary-foreground:#fff;--muted:#f1f5f9;--muted-foreground:#64748b;--accent:#10b981;--accent-foreground:#fff;--border:#e5e7eb;--input:#f1f5f9;--ring:rgba(5,150,105,.5);--radius:0.5rem;--font-sans:"Geist Sans",system-ui,-apple-system,sans-serif;--font-mono:"Geist Mono","Courier New",monospace}body{font-family:var(--font-sans);background-color:var(--background);color:var(--foreground);line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.header{position:-webkit-sticky;position:sticky;top:0;z-index:50;width:100%;border-bottom:1px solid var(--border);background-color:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-content{height:4rem;justify-content:space-between;padding:0 1rem}.header-content,.logo{display:flex;align-items:center}.logo{gap:.5rem}.logo-icon{height:2rem;width:2rem;border-radius:50%;background-color:var(--primary)}.logo-text{font-size:1.25rem;font-weight:700;color:var(--foreground)}.nav{display:none;align-items:center;gap:1.5rem}.nav-link{font-size:.875rem;font-weight:500;color:var(--muted-foreground);text-decoration:none;transition:color .2s ease}.nav-link:hover{color:var(--foreground)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:var(--radius);border:none;cursor:pointer;text-decoration:none;transition:all .2s ease}.btn-primary{background-color:var(--primary);color:var(--primary-foreground)}.btn-primary:hover{background-color:rgba(5,150,105,.9)}.btn-outline{background-color:transparent;color:var(--foreground);border:1px solid var(--border)}.btn-outline:hover{background-color:var(--muted)}.btn-sm{padding:.375rem .75rem;font-size:.75rem}.about-section{padding:5rem 0;background-color:var(--card)}.about-grid{display:grid;grid-gap:3rem;gap:3rem;align-items:center;max-width:72rem;margin:0 auto}.about-content{gap:1.5rem}.about-content,.about-header{display:flex;flex-direction:column}.about-header{gap:1rem}.about-title{font-size:2.5rem;font-weight:700;color:var(--foreground);line-height:1.2}.about-subtitle{font-size:1.25rem;color:var(--muted-foreground)}.highlight{color:var(--primary)}.about-text{display:flex;flex-direction:column;gap:1rem}.about-paragraph{color:var(--muted-foreground);line-height:1.7}.button-group{display:flex;flex-wrap:wrap;gap:.75rem}.about-image-container{display:flex;justify-content:center}.image-wrapper{position:relative}.image-frame{height:20rem;border-radius:1rem;background:linear-gradient(135deg,rgba(5,150,105,.2),rgba(16,185,129,.2));padding:.25rem}.profile-image{width:100%;height:100%;object-fit:cover;border-radius:.75rem}a:visited{color:inherit}.image-badge{position:absolute;bottom:-1rem;right:-1rem;width:6rem;height:6rem;background-color:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.projects-section{padding:5rem 0;background-color:var(--background)}.projects-header{text-align:center;margin-bottom:3rem}.projects-title{font-size:2.5rem;font-weight:700;color:var(--foreground);margin-bottom:1rem}.projects-subtitle{font-size:1.125rem;color:var(--muted-foreground);max-width:600px;margin:0 auto}.projects-grid{display:grid;grid-gap:2rem;gap:2rem;margin-bottom:3rem}.project-card{background-color:var(--card);border-radius:var(--radius);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.project-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px rgba(0,0,0,.1)}.project-image{width:100%;height:12rem;object-fit:cover}.project-content{padding:1.5rem}.project-title{font-size:1.25rem;font-weight:600;color:var(--foreground);margin-bottom:.5rem}.project-description{color:var(--muted-foreground);margin-bottom:1rem;line-height:1.6}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem}.project-tag{background-color:var(--primary);color:var(--primary-foreground);padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.projects-list{gap:4rem;max-width:72rem;margin:0 auto}.project-item,.projects-list{display:flex;flex-direction:column}.project-item{gap:1.5rem}.project-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.project-item-title{font-size:1.875rem;font-weight:700;color:var(--foreground)}.project-links{display:flex;gap:.75rem}.project-item-description{font-size:1.125rem;color:var(--muted-foreground);line-height:1.7;max-width:64rem}.project-item-tags{display:flex;flex-wrap:wrap;gap:.5rem}.project-item-tag{background-color:var(--secondary);color:var(--secondary-foreground);padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:500}.project-screenshots{display:grid;grid-gap:1rem;gap:1rem}.screenshot-item{position:relative;cursor:pointer;overflow:hidden;border-radius:var(--radius);border:1px solid var(--border);transition:all .3s ease}.screenshot-item:hover{border-color:rgba(5,150,105,.2)}.screenshot-image{width:100%;height:12rem;object-fit:cover;transition:transform .3s ease}.screenshot-item:hover .screenshot-image{transform:scale(1.05)}.screenshot-overlay{position:absolute;inset:0;background-color:transparent;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.screenshot-item:hover .screenshot-overlay{background-color:rgba(0,0,0,.1)}.screenshot-icon{opacity:0;background-color:hsla(0,0%,100%,.9);border-radius:50%;padding:.5rem;transition:opacity .3s ease}.screenshot-item:hover .screenshot-icon{opacity:1}.project-separator{border-top:1px solid rgba(229,231,235,.5);padding-top:2rem}.footer{background-color:var(--card);padding:3rem 0 2rem;border-top:1px solid var(--border)}.footer-content{display:grid;grid-gap:2rem;gap:2rem;margin-bottom:2rem}.footer-section h3{font-size:1.125rem;font-weight:600;color:var(--foreground);margin-bottom:1rem}.footer-links{display:flex;flex-direction:column;gap:.5rem}.footer-link{color:var(--muted-foreground);text-decoration:none;transition:color .2s ease}.footer-link:hover{color:var(--foreground)}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid var(--border)}.footer-bottom,.footer-description{color:var(--muted-foreground);font-size:.875rem}.footer-description{line-height:1.7}.footer-contact{color:var(--muted-foreground);font-size:.875rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background-color:var(--background);border-radius:var(--radius);position:relative;max-width:90vw;max-height:90vh;overflow:auto}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--muted-foreground);z-index:1001}.modal-close:hover{color:var(--foreground)}.modal-image{width:100%;height:auto;object-fit:cover}.modal-body{padding:2rem}.modal-title{font-size:1.875rem;font-weight:700;color:var(--foreground);margin-bottom:1rem}.modal-description{color:var(--muted-foreground);margin-bottom:1.5rem;line-height:1.7}.modal-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.modal-tag{background-color:var(--primary);color:var(--primary-foreground);padding:.375rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:500}.icon-sm{width:1rem;height:1rem;margin-right:.5rem}.social-links{display:flex;gap:1rem}.social-link{color:var(--muted-foreground);transition:color .2s ease}.social-link:hover{color:var(--primary)}.social-icon{width:1.25rem;height:1.25rem}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (min-width:768px){.nav{display:flex}.about-grid{grid-template-columns:1fr 1fr}.about-title{font-size:3rem}.projects-grid{grid-template-columns:repeat(2,1fr)}.footer-content{grid-template-columns:repeat(3,1fr)}.project-item-title{font-size:2rem}.project-screenshots{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.projects-grid{grid-template-columns:repeat(3,1fr)}}@font-face{font-family:Amsterdam;src:local("Amsterdam"),url(/_next/static/media/amsterdam-four.0794efee.ttf) format("truetype")}.logo{font-family:Amsterdam;font-size:30px}.logo a{text-decoration:none}