.home-projects-section { background:#f8fcfc; }
.home-projects-section .site-container { min-width:0; }
.home-projects-section .home-section-heading { align-items:center; }
.home-projects-intro { max-width:760px; margin:12px 0 0; color:var(--color-body-muted); }
.home-projects-controls { display:flex; gap:10px; flex:none; }
.home-projects-controls[hidden] { display:none; }
.home-projects-arrow { display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid #d5dee7; border-radius:50%; background:#fff; color:var(--color-primary); cursor:pointer; transition:background .2s ease,color .2s ease,border-color .2s ease; }
.home-projects-arrow svg { width:20px; height:20px; }
.home-projects-arrow:hover:not(:disabled) { background:var(--color-accent); border-color:var(--color-accent); color:#fff; }
.home-projects-arrow:disabled { opacity:.35; cursor:default; }
.home-projects-arrow:focus-visible,.home-projects-track:focus-visible { outline:2px solid var(--color-accent); outline-offset:4px; }
.home-projects-track { display:flex; gap:24px; min-width:0; max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#b8c7d5 transparent; padding:2px 0 16px; }
.home-project-card { flex:0 0 calc((100% - 48px)/3); min-width:0; display:flex; flex-direction:column; align-self:stretch; background:#fff; border:1px solid #e1e7ed; border-radius:10px; overflow:hidden; scroll-snap-align:start; }
.home-project-cover { display:block; background:#edf3f7; aspect-ratio:16/10; overflow:hidden; }
.home-project-cover img { display:block; width:100%; height:100%; object-fit:cover; }
.home-project-card-body { display:flex; flex:1; flex-direction:column; padding:24px; min-width:0; }
.home-project-card h3 { margin:0 0 14px; font-size:19px; line-height:1.45; overflow-wrap:anywhere; }
.home-project-card h3 a { color:var(--color-primary); }
.home-project-card h3 a:hover { color:var(--color-accent); }
.home-project-card-body > p { margin:0 0 22px; color:var(--color-body-muted); font-size:14px; line-height:1.7; }
.home-project-card .home-text-link { margin-top:auto; align-self:flex-start; }
@media(max-width:1000px) { .home-project-card { flex-basis:calc((100% - 24px)/2); } }
@media(max-width:600px) {
 .home-projects-section .home-section-heading { align-items:flex-start; gap:20px; }
 .home-projects-track { gap:16px; }
 .home-project-card { flex-basis:100%; }
 .home-project-card-body { padding:22px; }
 .home-project-card h3 { font-size:18px; }
}
@media(prefers-reduced-motion:reduce) { .home-projects-arrow { transition:none; } }
