/* ContrasteLab V173 — one reusable editorial discovery module for every article. */
.clb-related, .clb-context{--clbr-ink:var(--clg151-text,#f7f5fc);--clbr-muted:var(--clg151-muted,#aba4b6);--clbr-line:var(--clg151-line,rgba(255,255,255,.13));--clbr-accent:#c4a4ff;--clbr-panel:var(--clg151-panel,#171420);max-width:100%;min-width:0}
.road-page .clb-related,.road-page .clb-context{--clbr-ink:var(--r-ink,#f7f5fc);--clbr-muted:var(--r-muted,#aba4b6);--clbr-line:var(--r-line,rgba(255,255,255,.13));--clbr-accent:var(--r-accent,#c4a4ff);--clbr-panel:var(--r-panel,#171420)}
html[data-theme=light] .clb-related,html[data-theme=light] .clb-context{--clbr-accent:#673cb1}
.clb-related{padding:36px 0 12px;margin-top:58px;border-top:1px solid var(--clbr-line)}
.clb-related__head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px}
.clb-related__eyebrow,.clb-context__eyebrow{display:block;font-size:10px;line-height:1.5;letter-spacing:.15em;font-weight:850;text-transform:uppercase;color:var(--clbr-accent)}
.clg150-page .clb-related__head h2,.road-page .clb-related__head h2{font-family:system-ui,-apple-system,sans-serif!important;color:var(--clbr-ink)!important;font-size:clamp(29px,3vw,36px)!important;font-weight:820!important;line-height:1.15!important;letter-spacing:-.04em!important;margin:9px 0 0!important}
.clb-related__all{font-size:13px;line-height:1.4;white-space:nowrap;text-decoration:none!important;font-weight:760;color:var(--clbr-accent)!important}
.clb-related__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.clb-related__item{min-width:0;overflow:hidden;display:flex;flex-direction:column;background:var(--clbr-panel);border:1px solid var(--clbr-line);border-radius:20px;transition:border-color .15s ease,transform .15s ease}
.clb-related__item:hover{border-color:rgba(155,106,232,.50);transform:translateY(-2px)}
.clb-related__media{display:block;aspect-ratio:16/9;overflow:hidden;flex-shrink:0;background:linear-gradient(125deg,#e8dffa,#dcecff)}
.clb-related__media img{width:100%;height:100%;object-fit:cover;display:block}
.clb-related__body{padding:20px;display:flex;flex:1;flex-direction:column;gap:0;min-width:0}
.clb-related__meta{font-size:11px;font-weight:780;line-height:1.5;color:var(--clbr-accent);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}
.clg150-page .clb-related__body h3,.road-page .clb-related__body h3{font-family:system-ui,-apple-system,sans-serif!important;font-size:clamp(19px,2.2vw,24px)!important;font-weight:800!important;line-height:1.23!important;letter-spacing:-.035em!important;margin:0 0 10px!important;color:var(--clbr-ink)!important;overflow-wrap:normal!important;hyphens:none!important}
.clb-related__body h3 a{color:inherit!important;text-decoration:none!important}
.clb-related__body p{font-size:13.5px!important;line-height:1.65!important;color:var(--clbr-muted)!important;margin:0 0 15px!important}
.clb-related__read{display:inline-flex;align-items:center;gap:8px;margin-top:auto;color:var(--clbr-accent)!important;font-size:13px;font-weight:800;text-decoration:none!important}
.clb-context{border:1px solid var(--clbr-line);border-radius:16px;background:var(--clbr-panel);padding:20px 22px;margin:26px 0;box-shadow:inset 3px 0 0 #a36cde}
.clb-context__content{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.clb-context__content strong{display:block;color:var(--clbr-ink);font-size:19px;font-weight:800;line-height:1.32;margin:7px 0}
.clb-context__content p{font-size:14px!important;color:var(--clbr-muted)!important;line-height:1.65!important;margin:0!important}
.clb-context__content>a{font-size:13.5px;font-weight:780;color:var(--clbr-accent)!important;text-decoration:none!important;line-height:1.5;overflow-wrap:break-word}
.clb-related a:focus-visible,.clb-context a:focus-visible{outline:3px solid var(--clbr-accent);outline-offset:3px;border-radius:4px}
@media(max-width:767.98px){.clb-related{margin-top:42px;padding-top:28px}.clb-related__head{align-items:start;flex-direction:column;gap:10px;margin-bottom:20px}.clb-related__grid{grid-template-columns:1fr;gap:13px}.clb-related__item{border-radius:18px}.clb-related__body{padding:18px}.clb-related__media{aspect-ratio:16/9}.clb-context{padding:18px;margin:25px 0}}
@media(prefers-reduced-motion:reduce){.clb-related__item{transition:none!important}.clb-related__item:hover{transform:none!important}}
