/* ============================================================
   Work/Projects card direction mockups — scoped, does not touch
   the existing .proj-* rules in styles.css.
   ============================================================ */

/* ==========================================================
   DIRECTION A — Editorial Grid, Polished
   ========================================================== */
.workA-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:60px}
.workA-card{position:relative;background:var(--cream);border:2px solid var(--ink);border-radius:18px;overflow:visible;
  transition:transform .22s cubic-bezier(.3,1.3,.5,1),box-shadow .22s;text-decoration:none;color:inherit;display:block;cursor:default}
.workA-card.is-link{cursor:pointer}
.workA-card:hover{transform:translate(-4px,-4px);box-shadow:8px 8px 0 var(--ink)}
.workA-cover{position:relative;aspect-ratio:16/11;border-radius:16px 16px 0 0;overflow:hidden;border-bottom:2px solid var(--ink);background:var(--mint)}
.workA-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.workA-cover.ph{display:flex;align-items:flex-end;justify-content:flex-start;padding:20px}
.workA-ghost{position:absolute;right:14px;top:-6px;font-family:var(--font-grotesk);font-weight:900;font-size:108px;
  line-height:1;color:rgba(36,20,8,.14);pointer-events:none}
.workA-soon{font-family:var(--font-grotesk);font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink);background:var(--cream);border:2px solid var(--ink);border-radius:999px;padding:6px 13px;z-index:2}
.workA-index{position:absolute;left:20px;top:-20px;z-index:3;width:44px;height:44px;border-radius:12px;background:var(--ink);
  color:var(--cream);display:flex;align-items:center;justify-content:center;font-family:var(--font-grotesk);font-weight:800;font-size:15px;
  border:2px solid var(--ink);box-shadow:3px 3px 0 rgba(36,20,8,.25)}
.workA-body{padding:34px 30px 28px;display:flex;flex-direction:column;gap:14px}
.workA-title{font-family:var(--font-display);font-weight:800;font-size:23px;letter-spacing:-.02em;margin:0;line-height:1.15;color:var(--ink)}
.workA-desc{font-size:15.5px;line-height:1.65;color:var(--ink-soft);margin:0}
.workA-meta{font-family:var(--font-grotesk);font-weight:700;font-size:12.5px;letter-spacing:.03em;color:var(--ink-soft);
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px}
.workA-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--ink-soft);flex-shrink:0}
.workA-cta{margin-top:10px;font-family:var(--font-grotesk);font-weight:800;font-size:14px;color:var(--ink);display:inline-flex;
  align-items:center;gap:7px;text-decoration:none;width:fit-content;padding-bottom:2px;border-bottom:2px solid var(--yellow)}
.workA-card:hover .workA-cta{border-bottom-color:var(--ink)}
@media(max-width:820px){.workA-grid{grid-template-columns:1fr;gap:26px}}

/* ==========================================================
   DIRECTION B — Alternating Editorial Rows
   ========================================================== */
.workB-list{display:flex;flex-direction:column;margin-top:60px}
.workB-row{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;
  padding:48px 0;border-top:2px solid var(--ink);text-decoration:none;color:inherit}
.workB-row:last-child{border-bottom:2px solid var(--ink)}
.workB-row.flip .workB-media{order:2}
.workB-ghostnum{position:absolute;left:0;top:50%;transform:translateY(-58%);font-family:var(--font-grotesk);font-weight:800;
  font-size:220px;line-height:1;color:rgba(36,20,8,.05);pointer-events:none;z-index:0;letter-spacing:-.04em}
.workB-row.flip .workB-ghostnum{left:auto;right:0}
.workB-media{position:relative;z-index:1;aspect-ratio:4/3;border-radius:14px;overflow:hidden;border:2px solid var(--ink);
  transition:transform .2s;display:flex;flex-direction:column;background:var(--cream)}
.workB-row:hover .workB-media{transform:translateY(-3px)}

/* browser-chrome frame around the cover thumbnail */
.workB-browserbar{flex-shrink:0;height:34px;display:flex;align-items:center;gap:10px;padding:0 12px;
  background:var(--cream-2);border-bottom:2px solid var(--ink)}
.workB-dots{display:flex;gap:5px;flex-shrink:0}
.workB-dots span{width:7px;height:7px;border-radius:50%;background:var(--ink-soft);opacity:.55}
.workB-url{flex:1;font-family:var(--font-grotesk);font-weight:700;font-size:11px;letter-spacing:.02em;color:var(--ink-soft);
  background:var(--cream);border:1.5px solid var(--line);border-radius:999px;padding:4px 12px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workB-screen{position:relative;flex:1;overflow:hidden}
.workB-screen img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.workB-media.ph .workB-screen{display:flex;align-items:center;justify-content:center;background:var(--mint)}
.workB-ph-mark{font-family:var(--font-grotesk);font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink);background:rgba(247,241,225,.9);border:2px solid var(--ink);border-radius:999px;padding:7px 15px}
.workB-text{position:relative;z-index:1;display:flex;flex-direction:column;gap:16px}
.workB-num{font-family:var(--font-grotesk);font-weight:800;font-size:14px;color:var(--ink-soft);letter-spacing:.05em}
.workB-title{font-family:var(--font-display);font-weight:800;font-size:30px;letter-spacing:-.025em;margin:0;line-height:1.08;color:var(--ink)}
.workB-desc{font-size:16px;line-height:1.68;color:var(--ink-soft);margin:0;max-width:44ch}
.workB-tagline{font-family:var(--font-grotesk);font-weight:700;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink);display:flex;flex-wrap:wrap;gap:0}
.workB-tagline span:not(:last-child)::after{content:" · ";color:var(--ink-soft);font-weight:500}
.workB-cta{margin-top:6px;font-family:var(--font-grotesk);font-weight:800;font-size:15px;color:var(--ink);display:inline-flex;
  align-items:center;gap:8px;text-decoration:none;width:fit-content}
.workB-cta svg{transition:transform .18s}
.workB-row:hover .workB-cta svg{transform:translateX(4px)}
@media(max-width:820px){.workB-row,.workB-row.flip{grid-template-columns:1fr;gap:24px;padding:34px 0}.workB-row.flip .workB-media{order:0}.workB-ghostnum{display:none}}

/* ── phone mockup frame (mobile-first projects) ── */
.workB-phone-wrap{display:flex;justify-content:center;align-items:center;position:relative;z-index:1}
.workB-phone{max-width:260px;width:100%;border-radius:34px;border:2px solid var(--ink);overflow:hidden;
  box-shadow:5px 7px 0 rgba(36,20,8,.16);transition:transform .2s;background:var(--cream-2)}
.workB-phone img{width:100%;height:auto;display:block}
.workB-row:hover .workB-phone{transform:translateY(-3px)}
@media(max-width:820px){.workB-phone{max-width:180px}}

/* ==========================================================
   DIRECTION C — Bold Color-Block Cards
   ========================================================== */
.workC-grid{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:auto auto;gap:32px;margin-top:60px}
.workC-card{position:relative;border-radius:26px;border:3px solid var(--ink);padding:26px 26px 28px;display:flex;flex-direction:column;gap:18px;
  text-decoration:none;color:inherit;transition:transform .22s cubic-bezier(.3,1.3,.5,1),box-shadow .22s}
.workC-card:hover{transform:translate(-5px,-5px) rotate(-.6deg);box-shadow:9px 10px 0 var(--ink)}
.workC-card.feature{grid-row:span 2}
.workC-mint{background:var(--mint)}
.workC-pink{background:var(--pink)}
.workC-yellow{background:var(--yellow)}
.workC-orange{background:var(--orange);color:var(--cream)}
.workC-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.workC-num{font-family:var(--font-grotesk);font-weight:900;font-size:15px;letter-spacing:.06em;
  background:var(--ink);color:var(--cream);border-radius:999px;padding:6px 13px;flex-shrink:0}
.workC-tags{display:flex;flex-wrap:wrap;gap:8px}
.workC-tags .chip-b{display:inline-flex;align-items:center;font-family:var(--font-grotesk);font-weight:700;font-size:11.5px;
  padding:5px 11px;border-radius:999px;background:var(--ink);color:var(--cream);border:2px solid var(--ink);white-space:nowrap}
.workC-media{position:relative;border-radius:16px;overflow:hidden;border:2px solid var(--ink);background:var(--cream);
  aspect-ratio:16/10;transform:rotate(-1.1deg);box-shadow:5px 6px 0 rgba(36,20,8,.18)}
.workC-media img{width:100%;height:100%;object-fit:cover;display:block}
.workC-card.feature .workC-media{aspect-ratio:16/9}
.workC-media.ph{display:flex;align-items:center;justify-content:center}
.workC-glyph{font-family:var(--font-grotesk);font-weight:900;font-size:64px;color:rgba(36,20,8,.22)}
.workC-title{font-family:var(--font-display);font-weight:800;font-size:22px;letter-spacing:-.02em;margin:0;line-height:1.16;color:var(--ink)}
.workC-card.feature .workC-title{font-size:28px}
.workC-desc{font-size:14.5px;line-height:1.6;margin:0;color:var(--ink)}
.workC-card.feature .workC-desc{font-size:16px;max-width:52ch}
.workC-cta{margin-top:auto;align-self:flex-start;font-family:var(--font-grotesk);font-weight:800;font-size:13.5px;
  background:var(--ink);color:var(--cream);border-radius:999px;padding:9px 18px;display:inline-flex;align-items:center;gap:7px;text-decoration:none}
@media(max-width:900px){.workC-grid{grid-template-columns:1fr}.workC-card.feature{grid-row:auto}}
