/* ============================================================
   PROJECTS — cases
   ============================================================ */

.case-list{display:flex; flex-direction:column; gap:20px; padding-bottom:100px;}
.case-card{
  display:grid; grid-template-columns:1fr 1.15fr; gap:0; border-radius:var(--radius-l); overflow:hidden;
  border:1px solid var(--border-soft); background:var(--panel);
}
.case-card:nth-child(even){grid-template-columns:1.15fr 1fr;}
.case-card:nth-child(even) .case-stage{order:2;}
.case-stage{aspect-ratio:4/3.2; position:relative; background:linear-gradient(160deg,#131c2e,#0a0e17);}
.case-stage model-viewer{width:100%; height:100%;}
.case-body{padding:38px 36px; display:flex; flex-direction:column; justify-content:center;}
.case-label{display:inline-flex; align-self:flex-start; margin-bottom:14px;}
.case-body h3{font-size:24px; margin-bottom:14px;}
.case-cols{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:18px 0 24px;}
.case-col span{display:block; font-family:var(--font-mono); font-size:10.5px; color:var(--text-3); text-transform:uppercase; letter-spacing:.06em; margin-bottom:6px;}
.case-col p{font-size:12.8px; color:var(--text-1); line-height:1.55;}
.case-tech{display:flex; gap:6px; flex-wrap:wrap; margin-bottom:24px;}
.case-tech span{font-family:var(--font-mono); font-size:10px; color:var(--text-2); border:1px solid var(--border-soft); padding:4px 9px; border-radius:20px;}
.case-actions{display:flex; gap:12px; flex-wrap:wrap;}

@media (max-width:900px){
  .case-card, .case-card:nth-child(even){grid-template-columns:1fr;}
  .case-card:nth-child(even) .case-stage{order:0;}
  .case-body{padding:28px 24px;}
  .case-cols{grid-template-columns:1fr;}
}
