/* c2-signals.css: styles for c2_sig1..c2_sig4 (one slide per signal), all scoped under .c2-sig. Tokens from
   ../research-deck/styles.css and brand.css (--ink, --blue accent, --muted, --line2, --ease). Chart keeps its
   space from stage 0 so nothing moves when it fades in. */
.c2-sig{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:visible}
.c2-sig .cs-in{margin-block:auto;display:grid;grid-template-columns:minmax(0,40fr) minmax(0,60fr);gap:clamp(20px,3.2vw,56px);align-items:center;min-width:0;min-height:0}
.c2-sig .cs-left{display:flex;flex-direction:column;gap:clamp(10px,2vh,20px);min-width:0;animation:csUp .4s var(--ease) both}
.c2-sig .eyebrow{font-size:12px}
.c2-sig .cs-h1{font-size:clamp(30px,min(3.3vw,6.6vh),58px);line-height:1.06;letter-spacing:-.035em;max-width:14ch;margin:0}
.c2-sig .cs-stats{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.6vw,26px);margin-top:clamp(6px,2vh,22px);padding-top:clamp(12px,2.4vh,24px);border-top:1px solid var(--line2)}
.c2-sig .cs-stat{display:flex;flex-direction:column;gap:4px;min-width:0}
.c2-sig .cs-num{font-family:Montserrat,Inter,system-ui,sans-serif;font-weight:600;font-size:clamp(28px,min(2.9vw,6vh),50px);letter-spacing:-.03em;line-height:1.04;color:var(--blue);font-variant-numeric:tabular-nums;white-space:nowrap}
.c2-sig .cs-num i{font-style:normal;font-weight:500;font-size:.5em;letter-spacing:-.01em;color:var(--ink)}
.c2-sig .cs-lab{font-size:clamp(14px,1.9vh,17px);font-weight:500;color:var(--ink);line-height:1.3}
.c2-sig .cs-sub{font-size:clamp(12px,1.6vh,13.5px);color:var(--muted);line-height:1.35;max-width:26ch}
.c2-sig .cs-chart{position:relative;border-radius:22px;padding:clamp(12px,2.2vh,24px) clamp(14px,1.6vw,26px);min-width:0;opacity:0;transform:translateY(10px);transition:opacity .38s var(--ease),transform .38s var(--ease)}
.c2-sig .cs-chart.on{opacity:1;transform:none}
.c2-sig .cs-axis,.c2-sig .cs-row{display:grid;grid-template-columns:clamp(110px,11vw,190px) minmax(0,1fr);gap:clamp(8px,1vw,16px);align-items:center}
.c2-sig .cs-axis{padding-bottom:clamp(4px,.9vh,8px);border-bottom:1px solid var(--line2);margin-bottom:clamp(2px,.5vh,6px)}
.c2-sig .cs-ticks{position:relative;height:1.4em;margin-inline:7px;font-size:clamp(11px,1.5vh,12.5px);color:var(--muted);letter-spacing:.01em}
.c2-sig .cs-ticks span{position:absolute;top:0;white-space:nowrap}.c2-sig .cs-ticks span:first-child{left:0;transform:translateX(-6px)}.c2-sig .cs-ticks span:nth-child(2){left:50%;transform:translateX(-50%)}.c2-sig .cs-ticks span:last-child{right:0;transform:translateX(6px);color:var(--blue);font-weight:600}
.c2-sig .cs-rows{list-style:none;margin:0;padding:0}
.c2-sig .cs-row{height:clamp(19px,calc(3.3vh + 2px),36px);opacity:0;transform:translateX(-6px);transition:opacity .3s var(--ease),transform .3s var(--ease);transition-delay:0ms}
.c2-sig .cs-chart.on .cs-row{opacity:1;transform:none;transition-delay:calc(var(--i)*30ms + 120ms)}
.c2-sig .cs-b{font-size:clamp(11.5px,1.65vh,14px);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}
.c2-sig .cs-none .cs-b{color:rgba(28,6,47,.34)}
.c2-sig .cs-track{position:relative;height:100%;min-width:0;margin-inline:7px}
.c2-sig .cs-line{position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(102,51,153,.16)}
.c2-sig .cs-track::after{content:"";position:absolute;right:-1px;top:18%;bottom:18%;width:2px;border-radius:2px;background:rgba(102,51,153,.32)}
.c2-sig .cs-none .cs-line{background:rgba(28,6,47,.07)}
.c2-sig .cs-none .cs-track::after{background:rgba(28,6,47,.08)}
.c2-sig .cs-dot{position:absolute;top:50%;width:clamp(12px,1.9vh,16px);height:clamp(12px,1.9vh,16px);margin:0;padding:0;border:2px solid #fff;border-radius:50%;background:var(--blue);transform:translate(-50%,-50%);cursor:pointer;box-shadow:0 1px 3px rgba(28,6,47,.25);transition:transform .15s var(--ease),box-shadow .15s var(--ease);z-index:1}
.c2-sig .cs-dot::before{content:"";position:absolute;inset:-8px;border-radius:50%}
.c2-sig .cs-dot:hover,.c2-sig .cs-dot.on,.c2-sig .cs-dot:focus-visible{transform:translate(-50%,-50%) scale(1.35);box-shadow:0 0 0 4px rgba(102,51,153,.18);outline:none;z-index:2}
.c2-sig .cs-key{margin:clamp(6px,1.2vh,12px) 0 0;font-size:clamp(11px,1.45vh,12.5px);color:var(--muted);line-height:1.35}
.c2-sig .cs-pop{position:absolute;z-index:5;width:min(340px,calc(100% - 16px));padding:12px 14px;border-radius:14px;background:#fff;border:1px solid var(--line2);box-shadow:0 10px 30px rgba(28,6,47,.16);font-size:13px;line-height:1.4;color:var(--ink)}
.c2-sig .cs-pop[hidden]{display:none}
.c2-sig .cs-pop p{margin:0}
.c2-sig .cs-pd{font-size:11.5px;font-weight:600;color:var(--blue);letter-spacing:.02em;margin-bottom:4px!important}
.c2-sig .cs-pe{font-weight:500;margin-bottom:6px!important}
.c2-sig .cs-pq{margin:0 0 8px;padding-left:10px;border-left:2px solid rgba(102,51,153,.35);color:var(--muted);font-style:italic}
.c2-sig .cs-pl{font-size:12px;color:var(--blue);text-decoration:none;font-weight:500}
.c2-sig .cs-pl:hover{text-decoration:underline}
@keyframes csUp{from{opacity:0;transform:translateY(10px)}}
.c2-sig.cs-still .cs-left,.c2-sig.cs-still .cs-chart,.c2-sig.cs-still .cs-row{animation:none;transition:none}
@media (max-width:760px){
 .c2-sig{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;margin-inline:-16px;padding-inline:16px}
 .c2-sig .cs-in{grid-template-columns:1fr;margin-block:0;padding-bottom:20px;gap:14px;align-items:start}
 .c2-sig .cs-h1{font-size:28px;max-width:none}
 .c2-sig .cs-num{font-size:30px}
 .c2-sig .cs-chart{padding:12px}
 .c2-sig .cs-axis,.c2-sig .cs-row{grid-template-columns:104px minmax(0,1fr);gap:8px}
 .c2-sig .cs-row{height:26px}
 .c2-sig .cs-b{font-size:12px}
 .c2-sig .cs-dot{width:14px;height:14px}
}
@media (prefers-reduced-motion:reduce){.c2-sig .cs-left,.c2-sig .cs-chart,.c2-sig .cs-row{transition:none!important;animation:none!important}}
