.footer-email i{font-style:italic}.projects-section{padding:3rem 0 6rem}.projects-layout{grid-template-columns:1.5fr 1.5fr;gap:2rem;display:grid}.projects-left{flex-direction:column;gap:1.5rem;display:flex;position:sticky;top:2rem}.projects-tagline{font-family:var(--font-body);color:var(--accent);font-size:.85rem;line-height:1.5}.projects-tagline strong{font-weight:600}.projects-thumbnail-preview{aspect-ratio:16/9;background:0 0;width:100%;position:relative;overflow:hidden}.projects-thumbnail-preview img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .3s;position:absolute;top:0;left:0}.projects-thumbnail-preview img.active{opacity:1}.projects-table{width:100%}.project-row{padding:.85rem 0;transition:padding .3s;display:block;position:relative}.project-row:before,.project-row:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(to right, var(--border-color), var(--border-color)) 0 50% / 100% 1px no-repeat, linear-gradient(to bottom, var(--border-color), var(--border-color)) 0 0 / 1px 100% no-repeat, linear-gradient(to bottom, var(--border-color), var(--border-color)) 169px 0 / 1px 100% no-repeat;height:23px;transition:opacity .3s;display:block;position:absolute;left:0;right:0}.project-row:before{top:-12px}.project-row:after{bottom:-12px}.project-row:hover:before,.project-row:hover:after{opacity:1}.project-row:last-child:hover:after,.project-row:first-child:hover:before{opacity:0}.project-row:first-child{padding-top:0}.project-row:hover{padding:1.2rem 0}.project-row:first-child:hover{padding-top:0}.project-row-header{grid-template-columns:150px 1fr auto;align-items:baseline;gap:1.5rem;display:grid}.project-row-name{font-family:var(--font-body);color:var(--accent);font-size:.9rem;font-weight:600}.project-row-category{font-family:var(--font-body);color:var(--text-body);opacity:.6;font-size:.85rem}.project-row-year{font-family:var(--font-body);color:var(--text-body);opacity:.6;text-align:right;font-size:.85rem}.project-row-details{opacity:0;max-height:0;transition:max-height .35s,opacity .25s;overflow:hidden}.project-row:hover .project-row-details{opacity:1;max-height:200px}.project-row-details-inner{flex-direction:column;gap:.5rem;padding:25px 0 .25rem calc(150px + 1.5rem);display:flex}.project-row-thumb{display:none}.project-row-summary{font-family:var(--font-body);color:var(--text-body);opacity:.6;max-width:500px;font-size:.8rem;line-height:1.5}.project-row-awards{flex-wrap:wrap;gap:.4rem;display:flex}.project-row-award{font-family:var(--font-body);color:var(--text-tagline);border:1px solid var(--text-tagline);letter-spacing:-.01em;border-radius:100px;padding:.2rem .5rem;font-size:.7rem;font-weight:600}@media (width<=768px){.site-header .container{padding-block:.75rem}.projects-section{padding:1.5rem 0 2rem}.projects-layout{grid-template-columns:1fr;gap:1rem}.projects-left{position:static}.projects-tagline,.projects-thumbnail-preview{display:none}.project-row,.project-row:hover,.project-row:first-child,.project-row:first-child:hover{padding:16px 0}.project-row-header{grid-template-columns:80px 1fr auto;gap:.5rem}.project-row-name{font-size:.75rem}.project-row-category,.project-row-year{font-size:.7rem}.project-row-details,.project-row:hover .project-row-details{opacity:1;max-height:none}.project-row-details-inner{grid-template-rows:auto 1fr;grid-template-columns:120px 1fr;gap:8px 16px;padding:8px 0 0;display:grid}.project-row-thumb{object-fit:cover;border:1px solid var(--border-color);grid-row:1/3;width:120px;height:80px;display:block}.project-row:before,.project-row:after,.project-row:hover:before,.project-row:hover:after{opacity:0!important}}.more-section{padding:0 0 96px}.more-tagline{font-family:var(--font-body);color:var(--accent);margin-bottom:24px;font-size:.85rem;line-height:24px}.more-tagline strong{font-weight:600}.more-grid{gap:var(--gutter);grid-template-columns:repeat(4,1fr);display:grid}.more-tile{border:1px solid var(--border-color);min-height:168px;color:var(--text-body);flex-direction:column;gap:8px;padding:24px;transition:background-color .3s;display:flex}a.more-tile:hover{background:var(--bg-secondary)}.more-logo{width:48px;height:48px;margin-bottom:8px}.more-name{font-family:var(--font-body);color:var(--accent);font-size:.9rem;font-weight:600;line-height:24px}.more-category{font-family:var(--font-body);opacity:.6;font-size:.75rem;line-height:16px}@media (width<=768px){.more-section{padding:0 0 48px}.more-grid{grid-template-columns:repeat(2,1fr)}.more-tile{min-height:144px;padding:16px}}
