/* Shared styles for the Case Studies grid (/case-studies) and every
   individual case study page (/case-studies/<slug>). */

/* ---------- Cards (grid on /case-studies and "More case studies") ---------- */
.rc-csg-filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:36px}
.rc-csg-filter{font-family:'Public Sans',sans-serif;font-size:14px;font-weight:600;color:#16233a;background:#fff;border:1.5px solid #e9e5d9;border-radius:999px;padding:9px 18px;cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.rc-csg-filter:hover{border-color:#1e3a5f}
.rc-csg-filter[aria-pressed=true]{background:#1e3a5f;border-color:#1e3a5f;color:#fbfaf7}
.rc-csg-filter .count{opacity:.7;margin-left:4px;font-weight:500}
.rc-csg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,370px));justify-content:center;gap:28px;max-width:1180px;margin:0 auto}
.rc-csg-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #e9e5d9;border-radius:14px;overflow:hidden;transition:translate .28s,border-color .28s,box-shadow .28s}
.rc-csg-card:hover,.rc-csg-card:focus-within{translate:0 -6px;border-color:#b8842b;box-shadow:0 18px 36px rgba(22,35,58,.1)}
.rc-csg-card[hidden]{display:none}
.rc-csg-media{aspect-ratio:16/10;background:#f1eee4;overflow:hidden}
.rc-csg-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.rc-csg-card:hover .rc-csg-media img{transform:scale(1.04)}
.rc-csg-body{display:flex;flex-direction:column;flex:1;padding:24px 26px 26px}
.rc-cs-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.rc-cs-tag{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:5px 11px;border-radius:999px}
.rc-cs-tag.industry{background:#f1eee4;color:#8b6320}
.rc-cs-tag.product{background:#eaf1ec;color:#3f7a5c}
.rc-csg-card h3{font-family:Spectral,Georgia,serif;font-size:21px;font-weight:600;line-height:1.3;color:#16233a;margin:0}
.rc-csg-card h3 a{color:inherit;text-decoration:none}
.rc-csg-card h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.rc-csg-card h3 a:focus-visible{outline:none}
.rc-csg-card:has(h3 a:focus-visible){outline:2px solid #1e3a5f;outline-offset:3px}
.rc-csg-excerpt{font-size:14.5px;color:#5b6b80;line-height:1.65;margin:10px 0 0}
.rc-csg-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:20px}
.rc-csg-key{font-family:Spectral,Georgia,serif;font-size:16px;font-weight:700;color:#16233a}
.rc-csg-key span{display:block;font-family:'Public Sans',sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#9c8b63;margin-bottom:2px}
.rc-csg-read{font-size:14px;font-weight:700;color:#1e3a5f;white-space:nowrap;transition:color .2s}
.rc-csg-card:hover .rc-csg-read{color:#b8842b}
.rc-csg-empty{text-align:center;color:#5b6b80;font-size:15px;margin-top:20px}

/* ---------- Individual case study page ---------- */
.rc-cs-hero{background:#f1eee4;padding:56px 72px 72px}
.rc-cs-hero-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.rc-cs-back{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#1e3a5f;text-decoration:none;margin-bottom:22px}
.rc-cs-back:hover{color:#b8842b}
.rc-cs-hero .rc-cs-tag.industry{background:#fff}
.rc-cs-hero h1{font-family:Spectral,Georgia,serif;font-size:42px;font-weight:600;line-height:1.2;color:#16233a;margin:0}
.rc-cs-client{font-size:14.5px;font-weight:600;color:#5b6b80;margin:14px 0 0}
.rc-cs-lead{font-size:18px;line-height:1.75;color:#4b5768;margin:18px 0 0}
.rc-cs-hero-media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:14px;box-shadow:0 24px 48px rgba(22,35,58,.14);display:block}
.rc-cs-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;max-width:1180px;margin:0 auto}
.rc-cs-fact{border-left:2px solid #e4dcc8;padding-left:18px}
.rc-cs-fact dt{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#9c8b63}
.rc-cs-fact dd{margin:6px 0 0;font-family:Spectral,Georgia,serif;font-size:20px;font-weight:700;color:#16233a;line-height:1.3}
.rc-cs-story{max-width:760px;margin:0 auto}
.rc-cs-story h2{font-family:Spectral,Georgia,serif;font-size:26px;font-weight:600;color:#16233a;margin:44px 0 0}
.rc-cs-story h2:first-child{margin-top:0}
.rc-cs-story p{font-size:16.5px;line-height:1.8;color:#4b5768;margin:14px 0 0}
.rc-cs-story figure{margin:26px 0 0}
.rc-cs-story figure img{width:100%;height:auto;border-radius:12px;display:block}
.rc-cs-timeline{list-style:none;margin:22px 0 0 7px;padding:0 0 0 24px;border-left:2px solid #e4dcc8;display:flex;flex-direction:column;gap:20px}
.rc-cs-timeline li{position:relative}
.rc-cs-timeline li::before{content:"";position:absolute;left:-32px;top:2px;width:14px;height:14px;box-sizing:border-box;border-radius:50%;background:#b8842b;border:3px solid #fbfaf7;box-shadow:0 0 0 1px #e4dcc8}
.rc-cs-timeline .when{display:block;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#9c8b63}
.rc-cs-timeline strong{display:block;font-size:16.5px;color:#16233a;margin-top:3px}
.rc-cs-timeline .what{display:block;font-size:15.5px;color:#5b6b80;line-height:1.6;margin-top:3px}
.rc-cs-points{margin:16px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:10px;font-size:16px;color:#4b5768;line-height:1.7}
.rc-cs-points li::marker{color:#b8842b}
.rc-cs-points strong{color:#16233a}
.rc-cs-quote{margin:30px 0 0;background:#f1eee4;border-left:3px solid #b8842b;border-radius:8px;padding:22px 26px;font-family:Spectral,Georgia,serif;font-style:italic;font-size:21px;color:#16233a}
.rc-cs-cta{max-width:760px;margin:0 auto;background:#16233a;border-radius:14px;padding:40px 44px;color:#d5dae2}
.rc-cs-cta h2{font-family:Spectral,Georgia,serif;font-size:26px;font-weight:600;color:#fbfaf7;margin:0}
.rc-cs-cta p{font-size:16px;line-height:1.7;margin:12px 0 0}
.rc-cs-cta-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}
.rc-cs-cta a.rc-btn-primary{background:#b8842b;color:#16233a}
.rc-cs-cta a.rc-btn-primary:hover{background:#cc9636;color:#16233a}
.rc-cs-cta a.rc-btn-secondary{color:#fbfaf7;border-color:rgba(251,250,247,.35)}
.rc-cs-cta a.rc-btn-secondary:hover{color:#fbfaf7;border-color:#fbfaf7}

@media (max-width:980px){.rc-cs-hero{padding:40px 32px 56px}.rc-cs-hero-inner{grid-template-columns:1fr;gap:36px}.rc-cs-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.rc-csg-grid{grid-template-columns:minmax(0,1fr)}.rc-cs-hero{padding:32px 20px 48px}.rc-cs-hero h1{font-size:30px!important}.rc-cs-lead{font-size:16.5px}.rc-cs-cta{padding:30px 24px}.rc-cs-story h2{font-size:23px}}
@media (prefers-reduced-motion:reduce){.rc-csg-card,.rc-csg-media img{transition:none}.rc-csg-card:hover .rc-csg-media img{transform:none}}
