:root{--bg: #0f0f0f;--bg-card: #181818;--border: rgba(255, 255, 255, .08);--text: #f0f0f0;--text-dim: rgba(240, 240, 240, .55);--radius: 12px;--max-width: 960px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:SF Pro Text,-apple-system,BlinkMacSystemFont,Inter,Helvetica Neue,sans-serif;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,p,ul{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid rgba(255,255,255,.4);outline-offset:2px;border-radius:2px}img{display:block;max-width:100%}.page{min-height:100vh;padding:clamp(1.5rem,4vw,3rem) clamp(1rem,4vw,2rem)}.main-container{max-width:var(--max-width);margin:0 auto}.header{text-align:center;margin-bottom:clamp(2.5rem,7vw,4.5rem)}.logo{width:clamp(100px,16vw,160px);height:auto;rotate:6deg;margin:0 auto 1.5rem}.header h1{font-size:clamp(1.8rem,5vw,2.5rem);font-weight:500;letter-spacing:-.02em;margin:0 0 .4rem}.tagline{color:var(--text-dim);font-size:clamp(.95rem,2.2vw,1.05rem);margin:0 0 1.2rem}.contact-links{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.2rem;font-size:.9rem}.contact-links a{color:var(--text-dim);transition:color .15s ease}.contact-links a:hover{color:var(--text)}.section{margin-top:clamp(2.5rem,6vw,4rem)}.section-title{font-size:clamp(1.2rem,2.8vw,1.5rem);font-weight:500;letter-spacing:-.01em;margin:0 0 1.5rem}.works{display:flex;flex-direction:column;gap:1.25rem}.work-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(1.2rem,3vw,1.75rem)}.work-card-header{display:flex;align-items:flex-start;gap:.85rem;margin-bottom:1rem}.work-card-logo{height:28px;width:auto;max-width:110px;border-radius:6px;object-fit:contain;flex-shrink:0;background:#ffffff0a;padding:4px 6px}.work-card-title{font-size:1.05rem;font-weight:400;line-height:1.35}.work-role{font-weight:600}.work-card-meta{color:var(--text-dim);font-size:.85rem;margin-top:.25rem}.work-card-bullets{list-style:none;padding:0;display:flex;flex-direction:column;gap:.6rem}.work-card-bullets li{position:relative;padding-left:1.1rem;font-size:.93rem;line-height:1.55}.work-card-bullets li:before{content:"";position:absolute;left:.3rem;top:.7rem;width:4px;height:4px;border-radius:50%;background:var(--text-dim)}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.project-card{position:relative;background:#ffffff0f;border-radius:var(--radius);cursor:pointer;overflow:hidden;aspect-ratio:1 / 1;transition:transform .2s ease}.project-card:hover{transform:translateY(-2px)}.project-card:before,.project-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;opacity:0;transition:opacity .5s;pointer-events:none}.project-card:hover:before{opacity:1}.project-grid:hover .project-card:after{opacity:1}.project-card:before{background:radial-gradient(1100px circle at var(--mouse-x) var(--mouse-y),rgba(255,255,255,.06),transparent 40%);z-index:3}.project-card:after{background:radial-gradient(500px circle at var(--mouse-x) var(--mouse-y),rgba(255,255,255,.35),transparent 40%);z-index:1}.project-card-content{position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:var(--bg-card);border-radius:inherit;display:flex;flex-direction:column;z-index:2}.project-card-image{height:55%;overflow:hidden;border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;background:#0a0a0a}.project-card-image img{width:100%;height:100%;object-fit:cover}.project-card-text{padding:.85rem 1rem 1rem;display:flex;flex-direction:column;flex-grow:1;gap:.4rem}.project-card-title{font-size:.95rem;font-weight:500;line-height:1.3}.project-card-subtitle{color:var(--text-dim);font-size:.82rem;line-height:1.45}@media (max-width: 480px){.project-grid{grid-template-columns:1fr}.project-card{aspect-ratio:16 / 11}.work-card-title{font-size:.98rem}.work-card-bullets li{font-size:.9rem}}
