/* Project directory only: reuse the site's palette, fonts, and shadows. */
.projects-site .content-panel > h1 { 
    font-size: 1.85rem;
 }
.projects-site .Robotics-Group { 
    margin-top: 2rem;
 }
.projects-site .project-group-heading { 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    flex-wrap: wrap; 
    gap: 1rem; 
    margin-bottom: 1.5rem;
 }
.projects-site .project-group-heading h2 { 
    font-size: 1.85rem; 
}
.projects-site .robotics-button { 
    display: inline-flex; 
    align-items: center; 
    justify-content: center; 
    gap: .6rem; 
    min-height: 44px; 
    padding: .55rem 1rem; 
    border: 2px solid var(--purple-3); 
    border-radius: .5rem; background: 
    var(--purple-3); color: var(--brown-4); 
    box-shadow: 3px 3px 0 var(--soft-purple); 
    font-size: 1.15rem; 
    text-decoration: none;
 }
.projects-site .robotics-button:is(:hover, :focus-visible) 
{ background: var(--purple-2);
    
 }
.projects-site .projects-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: 1.25rem; }
.projects-site .project-container { min-width: 0; overflow: hidden; border: 2px solid var(--lavender); border-radius: .75rem; background: white; box-shadow: 4px 4px 0 var(--lavender); }
.projects-site .project-image-link { display: grid; place-items: center; aspect-ratio: 4 / 3; padding: .5rem; background: var(--periwinkle); border-bottom: 1px solid var(--lavender); }
.projects-site .project-image-link img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.projects-site .project-image-link:focus-visible { outline-offset: -4px; }
.projects-site .project-card-content { padding: 1rem; }
.projects-site .project-card-content h3 { font-family: "headerfont", system-ui, sans-serif; font-size: 1.5rem; font-weight: 400; line-height: 1.3; }
.projects-site .project-card-content h3 a { text-decoration-thickness: 1px; }
.projects-site .project-card-content p { font-size: 1.25rem; line-height: 1.6; }
.projects-site .project-status { display: inline-block; margin-top: .75rem; padding: .15rem .6rem; border: 1px solid var(--purple-2); border-radius: 999px; background: var(--brown-4); font-size: 1rem; }
.projects-site .project-tags { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .75rem; list-style: none; }
.projects-site .project-tags li { padding: .15rem .65rem; border: 1px solid var(--line); border-radius: 999px; background: var(--periwinkle); font-size: .95rem; }
.projects-site .content-panel .project-draft-note { margin-top: 2rem; }
@media (max-width: 520px) {
    .projects-site .content-panel { padding: 1rem; }
    .projects-site .content-panel :is(h1, h2) { font-size: 1.65rem; }
    .projects-site .project-card-content h3 { font-size: 1.4rem; }
    .projects-site .project-card-content p { font-size: 1.2rem; }
}
