/* ─────────────────────────────────────────────────────────────────────────────
   Interior index pages: /case-studies/ and /about.html
   Loaded after css/pricing.css, which supplies the shared shell (nav, breadcrumb,
   page hero, section labels, buttons, footer). Only the page-specific blocks live
   here.
   ───────────────────────────────────────────────────────────────────────────── */

/* CASE STUDY INDEX */
.csi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:80px;}
.csi-card{display:flex;flex-direction:column;background:var(--surf);border:1px solid var(--border);border-radius:8px;overflow:hidden;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s;}
.csi-card:hover{border-color:var(--accent);transform:translateY(-2px);}
.csi-thumb{aspect-ratio:16/9;overflow:hidden;background:var(--bg2);}
.csi-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s;}
.csi-card:hover .csi-thumb img{transform:scale(1.03);}
.csi-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1;}
.csi-sector{font-family:var(--mono);font-size:10px;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;}
.csi-title{font-size:17px;font-weight:600;line-height:1.35;margin-bottom:10px;}
.csi-desc{font-size:13.5px;color:var(--text2);line-height:1.65;font-weight:300;margin-bottom:16px;}
.csi-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px;}
.csi-tag{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;color:var(--text2);background:var(--bg2);border:1px solid var(--border);border-radius:3px;padding:3px 7px;}
.csi-cta{margin-top:auto;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--accent);}

/* ABOUT */
.ab-prose{max-width:72ch;margin-bottom:80px;}
.ab-prose p{font-size:16px;color:var(--text2);line-height:1.85;font-weight:300;margin-bottom:20px;}
.ab-prose p:last-child{margin-bottom:0;color:var(--text);}

.ab-timeline{display:grid;gap:0;margin-bottom:80px;border-top:1px solid var(--border);}
.ab-role{display:grid;grid-template-columns:150px 1fr;gap:28px;padding:26px 0;border-bottom:1px solid var(--border);}
.ab-role-date{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.08em;padding-top:3px;}
.ab-role-title{font-size:17px;font-weight:600;margin-bottom:4px;}
.ab-role-company{font-family:var(--mono);font-size:11px;color:var(--text2);letter-spacing:.06em;margin-bottom:12px;}
.ab-role-desc{font-size:14px;color:var(--text2);line-height:1.75;font-weight:300;margin:0;max-width:70ch;}

.ab-contact{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px;}
.ab-contact-row{display:flex;align-items:baseline;gap:14px;background:var(--bg3,var(--surf));border:1px solid var(--border);border-radius:var(--r);padding:16px 20px;}
.ab-contact-label{font-family:var(--mono);font-size:10px;color:var(--accent);letter-spacing:.12em;min-width:70px;}
.ab-contact-val{font-size:14px;color:var(--text2);}
.ab-contact-val a{color:var(--text2);text-decoration:none;transition:color .2s;}
.ab-contact-val a:hover{color:var(--accent);}

.ab-cv{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:var(--surf);border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:var(--r);padding:22px 24px;margin-bottom:80px;}
.ab-cv-title{font-size:16px;font-weight:600;margin-bottom:4px;}
.ab-cv-desc{font-size:13px;color:var(--text2);font-weight:300;}

@media(max-width:960px){
  .csi-grid{grid-template-columns:1fr 1fr;}
  .ab-contact{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .csi-grid{grid-template-columns:1fr;}
  .ab-role{grid-template-columns:1fr;gap:10px;}
}
