.project-index{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:-8px 0 38px}
.project-index a{display:flex;flex-direction:column;min-height:118px;padding:17px 18px;border:1px solid var(--line);border-radius:9px;background:#f8fafc;text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.project-index a:hover,.project-index a:focus-visible{border-color:#2da995;box-shadow:0 8px 22px rgba(11,23,40,.07);transform:translateY(-2px)}
.project-index span{color:#2d756b;font-size:.67rem;font-weight:700;letter-spacing:.12em}
.project-index strong{margin:9px 0 3px;font-family:'Space Grotesk',Arial,sans-serif;font-size:1.06rem;line-height:1.2;letter-spacing:-.025em}
.project-index small{margin-top:auto;color:var(--muted);font-size:.73rem}
.project{scroll-margin-top:88px}
.case-note-first{margin:0 0 17px;padding:15px 18px;border-left:3px solid #2da995;background:#f2f8f7;color:#365568;line-height:1.6}
.engineering-note{margin:0 0 25px;border:1px solid #d4e1e9;border-radius:9px;background:#fbfdfe;overflow:hidden}
.engineering-note summary{cursor:pointer;padding:14px 18px;color:#214f61;font-size:.88rem;font-weight:700;list-style-position:inside}
.engineering-note summary:hover{background:#f0f6f8}
.engineering-note[open] summary{border-bottom:1px solid #d4e1e9}
.engineering-note-body{padding:18px 22px 20px;color:#435a6c;font-size:.88rem;line-height:1.65}
.engineering-note-body p{margin:0 0 12px}
.engineering-note-body p:last-child{margin-bottom:0}
.engineering-note-body .code-label{margin-top:20px;color:var(--ink);font-weight:700}
.engineering-note-body pre{overflow-x:auto;margin:0 0 13px;padding:18px 20px;border-radius:7px;background:#0f2235;color:#e1eff4;font:400 .8rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;tab-size:4}
.engineering-note-body .code-context{color:#607688;font-size:.78rem}
@media(max-width:900px){.project-index{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.project-index{grid-template-columns:1fr;margin-bottom:25px}.project-index a{min-height:82px}.project{scroll-margin-top:75px}.case-note-first{padding:13px 15px}.engineering-note-body{padding:16px}.engineering-note-body pre{padding:14px}}
@media(prefers-reduced-motion:reduce){.project-index a{transition:none}}
