*{box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:var(--white);min-height:100vh;color:var(--black);font-family:var(--sans-serif-font);opacity:0;margin:0;padding:100vh 0 0;transition:opacity .5s;position:relative;overflow-x:hidden}body.page-loaded{opacity:1}#cursor-glow{pointer-events:none;z-index:999;opacity:1;width:0;height:0;transition:opacity .2s;position:fixed;top:0;left:0}#cursor-glow.hidden{opacity:0}.cursor-square{border:1.5px solid var(--black);background-color:#0000;width:28px;height:28px;position:absolute;top:50%;left:50%}.cursor-square--a{transform:translate(-50%,-50%)rotate(0)}.cursor-square--b{border-color:var(--mustard);width:16px;height:16px;transform:translate(-50%,-50%)rotate(18deg)}.text{gap:var(--space-3xl);padding:0 var(--space-xl);flex-direction:column;align-items:center;min-width:0;display:flex}header{gap:var(--space-sm);flex-direction:column;align-items:flex-start;display:flex}h1,h2,h3{margin:0}h1{letter-spacing:var(--tracking-wide);font-size:clamp(3.5rem,15vw,13rem);line-height:var(--leading-display);font-family:var(--sans-serif-font)}h2{font-family:var(--serif-font);font-size:var(--h2-font-size);letter-spacing:.1rem;color:#a5a5a5}#projects-button:hover a{color:var(--gold)}#about-button:hover a{color:var(--plum)}#resume-button:hover a{color:var(--raspberry)}h3{font-size:var(--h3-font-size);letter-spacing:var(--tracking-wide);line-height:var(--leading-tight)}.sub-header{opacity:.5;font-family:var(--serif-font);letter-spacing:var(--tracking-text);font-size:1.25rem;font-weight:400;line-height:var(--leading-normal)}nav{z-index:10;justify-content:flex-end;align-items:center;gap:var(--space-lg);width:100%;padding:var(--space-md) var(--space-lg);display:flex;position:fixed;top:0;left:0}nav h3{letter-spacing:var(--tracking-display);font-size:1.25rem}nav a{color:var(--black);text-decoration:none;transition:color .3s}#stars-container{z-index:0;width:100%;height:100%;position:fixed;top:0;left:0}.overlay{z-index:1;justify-content:center;align-items:center;gap:var(--space-xl);flex-direction:row;width:100%;height:100vh;display:flex;position:absolute;top:0;left:0}.cube-container{flex-grow:1;flex-shrink:0;width:400px;height:400px}@media (width<=900px){.overlay{gap:var(--space-md);flex-direction:column}.cube-container{flex-grow:0;width:min(300px,60vw);height:min(300px,60vw)}.cube-container canvas{width:100%!important;height:100%!important}.text{padding:0 var(--space-md)}nav{justify-content:center;gap:var(--space-sm);padding:var(--space-sm)}nav h3{letter-spacing:var(--tracking-text);font-size:1rem}}.project-grid{z-index:1;grid-template-columns:repeat(2,1fr);gap:4rem 3rem;width:min(1300px,100% - 6rem);margin:0 auto 5rem;padding:4rem 3rem;display:grid;position:relative}.project{width:100%;color:inherit;text-decoration:none;display:block;position:relative}.project:before{content:"";aspect-ratio:16/10;border:1.5px solid var(--black);pointer-events:none;background-color:#0000;width:100%;transition:background-color .3s;position:absolute;top:12px;left:12px}.project:hover:before{background-color:color-mix(in srgb, var(--card-hover-accent) 50%, transparent) }.project-preview{aspect-ratio:16/10;object-fit:cover;border:1.5px solid var(--black);width:100%;transition:transform .3s;display:block;position:relative}.project:hover .project-preview{transform:translate(-6px,-6px)}.project-text{text-align:center;margin-top:2rem}.project-title{font-family:var(--serif-font);letter-spacing:0;font-size:1.1rem;font-weight:400;line-height:var(--leading-tight);color:var(--black);margin:0}.project-headliner{font-family:var(--serif-font);letter-spacing:0;font-size:.85rem;font-weight:400;line-height:var(--leading-normal);text-transform:none;color:#1e1e1e99;margin:.15rem 0 0}@media (width<=768px){.project-grid{gap:3rem 2rem;width:100%;padding:2rem 1.5rem}}@media (width<=600px){.project-grid{grid-template-columns:1fr;gap:4rem}.project-text{margin-top:2.5rem}}
