.project-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; align-items:start; }
.project-card { background:#fff; min-width:0; }
.project-card h3 { font-family:var(--font-heading); font-size:1.2rem; color:var(--navy); line-height:1.4; }
.project-description { font-family:var(--font-body); font-size:.9rem; color:#43536b; line-height:1.8; }
.project-card .story-hook { color:#34465f; }
.project-card .pill { align-self:flex-start; }
.project-metrics { display:flex; flex-wrap:wrap; gap:1rem 2rem; border-top:1px solid var(--border); padding-top:1rem; margin:0; }
.project-metrics div { display:flex; flex-direction:column-reverse; gap:.3rem; }
.project-metrics dt { font-size:.78rem; color:#43536b; }
.project-metrics dd { margin:0; font-family:var(--font-display); font-size:1.65rem; color:var(--navy); }
.project-preview { margin:1rem 0 0; }
.project-preview img { display:block; width:100%; height:auto; border:1px solid #d8dfe7; border-radius:8px; }
.project-preview figcaption { font-size:.75rem; color:#43536b; line-height:1.7; margin-top:.6rem; }
.project-preview a,.project-link { color:#174fa6; text-decoration:underline; text-underline-offset:4px; }
.project-links { display:flex; gap:1rem; flex-wrap:wrap; margin-top:auto; padding-top:1rem; }
.project-link { font-size:.85rem; font-weight:600; }
.project-gallery summary { cursor:pointer; color:#174fa6; font-size:.85rem; font-weight:600; padding:.8rem 0; }
.case-studies-page a:focus-visible,.project-gallery summary:focus-visible { outline:3px solid #174fa6; outline-offset:4px; }
.case-studies-page .metric-lbl-muted { color:#43536b; }
.case-studies-page .hero-h1 em { color:#a9c8ff; }
.case-studies-page .hero-sub,.case-studies-page .hero-overline { color:#d5e1f1; }
.case-studies-page .pill-tech { background:#e5eef9; color:#244c86; }
.project-card .pill-teal { color:#245a50; }
.project-card .pill-fin { color:#774717; }
.project-card .pill-crm { color:#6035a1; }
.case-studies-page .thesis-layout { display:grid; grid-template-columns:1.1fr 1fr; gap:2rem; }
.case-studies-page .thesis-story-hook { font-family:var(--font-display); font-style:italic; font-size:1.35rem; margin-bottom:1rem; }
.case-studies-page [id] { scroll-margin-top:100px; }
@media(max-width:760px) { .project-grid,.case-studies-page .thesis-layout { grid-template-columns:1fr; } .project-card { padding:1.5rem; } }
@media(prefers-reduced-motion:reduce) { .case-studies-page *, .case-studies-page *::before { transition:none!important; animation:none!important; scroll-behavior:auto!important; } }
.more-projects { padding:3rem 0; border-top:1px solid var(--border); }
.more-projects h2 { font-family:var(--font-heading); font-size:1.5rem; color:var(--navy); margin:0 0 1.4rem; }
.archive-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.archive-card { display:flex; flex-direction:column; gap:.75rem; padding:1.25rem; background:#fff; border:1px solid #dce2e9; border-radius:8px; min-width:0; }
.archive-card h3 { font-family:var(--font-heading); color:var(--navy); font-size:1rem; line-height:1.5; margin:0; }
.archive-card p { color:#43536b; font-size:.85rem; line-height:1.7; margin:0; }
.archive-card .archive-methods { font-size:.75rem; }
.archive-card .project-link { margin-top:auto; padding-top:.25rem; font-size:.8rem; align-self:flex-start; }
@media(max-width:1000px) { .archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .archive-grid { grid-template-columns:1fr; } }
