/* Small thumbnails, concise rows and restrained spacing. */
#projects .projects,#research .projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#projects .project,#research .project{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:start;padding:18px;gap:16px;border-radius:10px;background:var(--panel);box-shadow:none;transition:border-color .2s}
#projects .project:hover,#research .project:hover{transform:none;box-shadow:none;border-color:var(--primary)}
#projects .project[hidden],#research .project[hidden]{display:none}
#projects .project-cover,#research .project-cover{width:88px;height:88px;max-height:88px;aspect-ratio:1;border:1px solid var(--line);border-radius:8px;margin:0;align-self:start}
#projects .project-cover img,#research .project-cover img{width:100%;height:100%;object-fit:cover;transform:none}
#projects .project-cover figcaption,#research .project-cover figcaption{display:none}
#projects .project-body,#research .project-body{padding:0;min-width:0;display:flex;flex-direction:column}
#projects .project-top,#research .project-top{font-size:10px;letter-spacing:.5px;line-height:1.5}.project-number{display:none}
#projects .project h3,#research .project h3{font-size:18px;line-height:1.35;margin:8px 0 9px;letter-spacing:-.25px}
#projects .project-body>p:not(.course-label),#research .project-body>p:not(.course-label){font-size:14px!important;line-height:1.6!important;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#projects .project .course-label,#research .project .course-label{font-size:11px!important;line-height:1.5!important;margin:0 0 9px!important}
#projects .project .tags,#research .project .tags{gap:5px;margin-top:0;padding:0}
#projects .tags span,#research .tags span{font-size:11px;padding:4px 6px;line-height:1.3;background:var(--muted);border:0;border-radius:4px}
#projects .detail-button,#research .detail-button{margin-top:9px;padding-top:4px;min-height:32px;font-size:13px;justify-content:flex-start;gap:10px}
#projects .project-links,#research .project-links{border-top:0;padding-top:0;margin-top:3px;gap:16px;flex-wrap:wrap;min-height:0}
#projects .project-links a,#research .project-links a{font-size:12px;min-height:28px;color:var(--sub)}
#projects .project-links a:hover,#research .project-links a:hover{color:var(--primary)}
.project-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;font-size:13px;color:var(--sub)}
.project-toolbar select{font:inherit;color:var(--foreground);background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:9px 30px 9px 10px;min-height:40px}
#reset-projects{color:var(--sub);font-size:13px;padding:10px;border:1px solid var(--line);border-radius:6px;min-height:40px}#reset-projects:hover{color:var(--primary);border-color:var(--primary)}
.resume-download{display:inline-flex;align-items:center;color:var(--primary);font-size:14px;border:1px solid var(--line);padding:11px 15px;border-radius:7px;margin-top:12px}
.hero{min-height:620px;padding-top:50px;padding-bottom:65px}.hero h1{font-size:clamp(38px,3.8vw,54px)}.orbit-profile{max-width:420px;margin:auto;width:100%}.section{padding:55px 0}.section h2{font-size:clamp(27px,2.7vw,35px)}.contact-section{padding:60px 0}.skills article{padding:19px}.filters{margin-bottom:19px}.filters button{padding:8px 14px}.project-search{margin-bottom:14px}
@media(max-width:960px){#projects .projects,#research .projects{grid-template-columns:1fr}#projects .project,#research .project{grid-template-columns:76px minmax(0,1fr)}#projects .project-cover,#research .project-cover{width:76px;height:76px;max-height:76px}.hero{min-height:auto}.hero h1{font-size:43px}}
@media(max-width:600px){#projects .project,#research .project{grid-template-columns:64px minmax(0,1fr);padding:15px;gap:13px}#projects .project-cover,#research .project-cover{width:64px;height:64px;max-height:64px}#projects .project h3,#research .project h3{font-size:17px}.hero h1{font-size:37px}.hero{padding-top:37px;padding-bottom:48px}.section{padding:45px 0}.orbit-profile{max-width:330px}.project-toolbar{gap:8px}.project-toolbar label{width:100%}.project-toolbar select{flex:1;min-width:0}.project-search input{font-size:16px}.contact-section{padding:48px 0}}
@media(prefers-reduced-motion:reduce){#projects .project,#research .project{transition:none}}
