.projects-page{max-width:1240px;margin:auto;padding:48px 32px 64px;color:var(--ink)}
.projects-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:end;margin-bottom:32px}
.projects-intro h1{font:750 clamp(32px,3.6vw,47px)/1.13 system-ui;letter-spacing:-1.8px;text-transform:none;color:var(--ink);margin:12px 0 0}
.projects-intro h1 span{color:var(--teal)}
.projects-page .projects-deck{max-width:450px;margin:0 0 3px;color:var(--muted);font:400 17px/1.75 system-ui}
.projects-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-top:1px solid var(--line);margin-bottom:12px}
.projects-toolbar p{display:flex;align-items:center;gap:10px;margin:0;font:400 13px/1.5 system-ui;color:var(--muted)}
.projects-count{display:grid;place-items:center;min-width:27px;height:27px;border-radius:8px;background:#eaf5f3;color:#096b6e;font-weight:700}
.projects-toolbar a{font-size:13px;font-weight:650;color:var(--ink)}
.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.project-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 4px 18px #142d3f05;transition:box-shadow .2s,border-color .2s}
.project-card:hover,.project-card:focus-within{border-color:#91b8bb;box-shadow:0 12px 28px #142d3f0c}
.project-visual{aspect-ratio:16/9;min-height:235px;overflow:hidden;min-width:0}
.project-eval-visual{display:flex;flex-direction:column;justify-content:center;padding:28px;background:radial-gradient(ellipse at 95% 5%,#17595f 0,transparent 65%),#102f46;color:#fff}
.eval-visual-heading{display:flex;align-items:center;gap:8px;font:650 10px/1.5 system-ui;letter-spacing:1.4px;color:#c6e6e5}
.eval-visual-dot{width:6px;height:6px;border-radius:50%;background:#67d8c4}
.eval-visual-code{margin-left:auto;font:500 20px/1 monospace;color:#88b8bc}
.eval-workflow{display:flex;align-items:center;gap:8px;margin:28px 0 22px}
.eval-workflow>div{display:flex;flex-direction:column;flex:1;min-width:0;padding:13px 11px;background:#ffffff0b;border:1px solid #ffffff26;border-radius:10px}
.eval-workflow>div:last-child{background:#b4eee512;border-color:#67d8c480}
.eval-workflow div>span{font:500 10px/1.5 monospace;color:#7bd7c8;margin-bottom:8px}
.eval-workflow strong{font:650 15px/1.5 system-ui}
.eval-workflow small{font:400 10px/1.5 system-ui;color:#b9cdd9;white-space:nowrap}
.eval-connector{color:#78b4b6;font-size:17px}
.eval-checks{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #ffffff20;padding-top:15px;font:400 10px/1.5 system-ui;color:#b9d9db}
.project-image-visual{background:#c96d33}
.project-image-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.project-body{display:flex;flex-direction:column;flex:1;padding:26px}
.project-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:10px;justify-content:space-between;font:650 10px/1.5 system-ui;letter-spacing:1px;text-transform:uppercase;color:var(--teal)}
.project-featured-label{padding:4px 8px;border-radius:5px;background:#edf7f4;color:#246d5b;letter-spacing:.4px;font-size:9px}
.project-body h2{font:700 25px/1.25 system-ui;letter-spacing:-.6px;text-transform:none;color:var(--ink);margin:15px 0 12px}
.project-body h2 a{color:inherit}
.project-body>p{font:400 15px/1.75 system-ui;color:var(--muted);margin:0 0 20px}
.project-tags{display:flex;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin:auto 0 24px}
.project-tags li{margin:0;padding:5px 9px;border-radius:6px;background:var(--paper);font:500 11px/1.5 system-ui;color:#486373}
.project-links{display:flex;flex-wrap:wrap;align-items:center;gap:16px;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px}
.project-repo{display:inline-flex;align-items:center;gap:8px;font:650 13px/1.5 system-ui;color:var(--ink)}
.project-repo svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.project-article{font:600 12px/1.5 system-ui;color:var(--teal)}
.projects-page a:hover{text-decoration:underline;text-underline-offset:4px}
.projects-note{display:flex;align-items:center;gap:16px;margin-top:28px;padding:18px 22px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.projects-note>span{font-size:25px;color:var(--teal)}
.projects-note p{margin:0;font:400 13px/1.7 system-ui;color:var(--muted)}.projects-note strong{color:var(--ink);font-weight:650}
@media(max-width:959px){.projects-intro{gap:28px}.project-eval-visual{padding:20px}.eval-workflow{gap:5px;margin:20px 0 16px}.eval-workflow>div{padding:10px 7px}.eval-workflow strong{font-size:13px}.eval-workflow small{font-size:9px}.eval-checks{font-size:9px}}
@media(max-width:699px){.projects-page{padding:30px 20px 40px}.projects-intro{grid-template-columns:1fr;gap:18px;margin-bottom:24px}.projects-intro h1{font-size:36px}.projects-page .projects-deck{font-size:16px}.projects-grid{grid-template-columns:1fr;gap:24px}.project-eval-visual{padding:24px}.eval-workflow strong{font-size:15px}.project-body{padding:22px}.projects-note{align-items:flex-start}.projects-toolbar a{font-size:12px}}
@media(max-width:379px){.projects-intro h1{font-size:31px}.project-eval-visual{padding:16px}.eval-workflow strong{font-size:13px}.eval-checks{font-size:8px}}
