/* LSS.works v5 - shared footer module, loaded by every page (the home page too).
   Moved out of case-v5.css so the home page can use the same footer as the case studies.
   Brand tokens (--p-brand, --cta-brand) come from styles-v5.css. */
.casefoot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:40px 64px;
  border-top:1px solid var(--line)}
.casefoot a{font-size:15px;font-weight:500;border-bottom:1px solid var(--line);padding-bottom:2px;
  transition:border-color .2s}
.casefoot a:hover{border-color:var(--p-brand)}

/* ---------- shared case footer ----------
   Three independent rows prevent navigation, CTA and signature from competing
   for the same flex layout. The footer is wider than editorial case copy,
   while its CTA remains deliberately centred. */
.casefoot-reveal{background:var(--bg);border-top:1px solid var(--line);padding-inline:40px}
.casefoot{width:min(100%,1540px);margin:0 auto;display:block;padding:0}
.casefoot-nav,.casefoot-meta{display:flex;width:100%;align-items:center;justify-content:space-between;gap:24px}
.casefoot-nav{padding:28px 0;border-bottom:1px solid var(--line)}
.casefoot-nav a{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
  padding:6px 0;border-bottom:1px solid transparent;transition:color var(--dur-ui) var(--ease-out-strong),border-color var(--dur-ui) var(--ease-out-strong)}
.casefoot-nav a:hover{color:var(--ink);border-color:var(--p-brand)}
.casefoot-cta{min-height:392px;max-width:1280px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:56px 20px;border-bottom:1px solid var(--line)}
.casefoot-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 28px;font-size:12px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.casefoot-eyebrow::before{content:'';width:28px;height:2px;background:var(--p-brand)}
.casefoot-cta h2{max-width:20ch;margin:0;font-size:clamp(40px,5.2vw,72px);font-weight:900;letter-spacing:-.04em;line-height:1.02}
.casefoot-cta h2 .accent,.casefoot-meta .accent{color:var(--p-brand)}
.casefoot-button{margin-top:32px;padding:0 24px;border-radius:4px;
  min-height:48px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;
  font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--cta-brand);color:#fff;
  transition:transform var(--dur-press) var(--ease-out-strong),background var(--dur-ui) var(--ease-out-strong)}
.casefoot-button:hover{transform:translateY(-1px);background:var(--cta-brand-hover)}
.casefoot-button:active{transform:none}
.casefoot-button:focus-visible,.casefoot-nav a:focus-visible{outline:2px solid var(--cta-brand);outline-offset:4px}
.casefoot-meta{padding:24px 0 40px;font-size:12px;color:var(--faint)}
@media (max-width:760px){
  .casefoot-reveal{padding-inline:20px}
  .casefoot-nav{padding:22px 0}
  .casefoot-cta{min-height:328px;padding:48px 0}
  .casefoot-cta h2{font-size:clamp(36px,10vw,52px)}
}
@media (max-width:520px){
  .casefoot-nav{gap:12px}
  .casefoot-eyebrow{margin-bottom:22px;font-size:10px}
  .casefoot-meta{padding:20px 0 28px;font-size:10px}
}

.casefoot a:focus-visible{outline:2px solid var(--cta-brand);outline-offset:4px}

/* arrow icons in text links: the same stroke as every other icon on the site */
.ico{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.casefoot-nav a{display:inline-flex;align-items:center;gap:10px}
.casefoot-nav a .ico{transition:transform var(--dur-ui,220ms) var(--ease-out-strong,ease)}
.casefoot-nav a:hover .ico-r,.casefoot-nav a:focus-visible .ico-r{transform:translateX(3px)}
.casefoot-nav a:hover .ico-l,.casefoot-nav a:focus-visible .ico-l{transform:translateX(-3px)}
