/* The homepage starts directly with the project list. */
.home .project-image.trading-bots{height:auto;aspect-ratio:1;background:#031b3a;border:1px solid var(--line);}
.home .project-image.trading-bots img{object-fit:contain;}
.home .project-section{margin-top:24px;padding-top:24px;}
.home .project-section>.section-label{
  margin-bottom:10px;font-family:var(--sans);line-height:1.65;
}
.home .project-image.ebm,.home .project-image.ebm-options{
  width:100%;height:auto;aspect-ratio:91/83;background:var(--surface);
}
.home .project-image.ebm img,.home .project-image.ebm-options img{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:contain;object-position:center;transform:none;transition:none;
}
.home .project-image.ebm,.home .project-image.ebm-options{background:#101e2b;}
/* Preserve the title while cropping out the PNG's footer. Uniformly enlarge
   and lower its original graph without redrawing or distorting the curves. */
.home .ebm-thumbnail-layout{position:absolute;top:0;left:50%;height:100%;aspect-ratio:1;transform:translateX(-50%);}
.home .project-image.ebm-options .ebm-options-labels{clip-path:inset(0 0 70%);}
.home .project-image.ebm-options .ebm-options-plot{
  clip-path:inset(32.5% 6% 27%);transform:translateY(10%) scale(1.12);transform-origin:center;
}
/* Crop the source image's light top/left rim within the thumbnail frame.
   Overscan avoids a transparent seam and keeps the frame completely filled. */
.home .project-image.maze{background:#636363;}
.home .project-image.maze img{
  inset:-3px auto auto -3px;
  width:calc(100% + 3px);height:calc(100% + 3px);max-width:none;
  object-fit:cover;object-position:right bottom;clip-path:none;
}
.home .project-row:focus-within{background:var(--surface-hover);}
.home .project-row:focus-within h3{color:var(--accent2);}
@media(max-width:760px){
  .home .project-section{margin-top:20px;padding-top:20px;}
}
