/* Solo esta página: tarjetas con figura en código y línea de sprints (prefijo ct-) */
.ct-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ct-card{display:flex;flex-direction:column}
.ct-stage{position:relative;z-index:1;padding:36px 32px 28px;border-bottom:1px solid var(--line);background-image:radial-gradient(circle,var(--dot) 1px,transparent 1.2px);background-size:22px 22px}
.ct-svg{width:100%;height:auto;overflow:visible}
.ct-m{display:none}
.ct-svg text{font:500 12.5px var(--f-body);fill:var(--fg);letter-spacing:-.005em}
.ct-svg text.m{font:500 10px var(--f-mono);letter-spacing:.07em;fill:var(--fg-3);text-transform:uppercase}
.ct-svg text.gt{fill:var(--green-text)}
.ct-svg text.hi{fill:var(--fg-hi)}
.ct-svg .ln{stroke:var(--line-2);stroke-width:1}
.ct-svg .gl{stroke:var(--green-line);stroke-width:1}
.ct-svg .tk{fill:var(--bg-2);stroke:var(--line-2);stroke-width:1}
.ct-svg .tk.hi{fill:var(--bg-3)}
.ct-svg .tk.ok{stroke:var(--green-line)}
.ct-svg .ck{fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ct-svg .bar{fill:var(--line-2)}
.ct-svg .barf{fill:var(--fg-3)}
.ct-svg .barg{fill:var(--green)}
.ct-svg .pend{fill:none;stroke:var(--line-3);stroke-width:1.5}
.ct-svg .spin{fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round}
.ct-body{position:relative;z-index:1;padding:28px 32px 32px;display:flex;flex-direction:column;gap:12px;flex:1}
.ct-top{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.ct-body h3{font:500 24px/1.2 var(--f-display);letter-spacing:-.025em;color:var(--fg-hi);margin:6px 0 0}
.ct-body p{margin:0 0 8px;color:var(--fg-2);font-size:15px;max-width:460px}
.ct-sprints{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-2)}
.ct-sprints li{position:relative;padding:40px 28px 0 0;display:flex;flex-direction:column}
.ct-sprints li::before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line-3)}
.ct-sprints li.ct-last::before{background:var(--green);box-shadow:0 0 0 4px var(--green-tint)}
.ct-sprints h3{font:500 clamp(20px,1.8vw,24px)/1.15 var(--f-display);letter-spacing:-.03em;color:var(--fg-hi);margin:18px 0 12px}
.ct-sprints p{margin:0 0 24px;color:var(--fg-2);font-size:15px;max-width:250px}
.ct-del{margin-top:auto;min-height:92px;display:flex;flex-direction:column;gap:8px;padding:16px 18px;border-radius:var(--r-in);background:var(--bg-1);box-shadow:inset 0 0 0 1px var(--line-2);font:500 15px/1.3 var(--f-display);letter-spacing:-.01em;color:var(--fg-hi)}
.ct-del svg{flex:none;width:14px;height:14px;fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ct-del small{display:flex;align-items:center;gap:8px;font:500 10px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}
.ct-last .ct-del{box-shadow:inset 0 0 0 1px var(--green-line);background:var(--green-tint)}
@media (max-width:960px){.ct-duo{grid-template-columns:1fr}.ct-sprints{grid-template-columns:1fr 1fr;row-gap:48px}}
@media (max-width:560px){
  .ct-d{display:none}.ct-m{display:block}
  .ct-stage{padding:24px 20px 18px}.ct-body{padding:24px 20px 26px}
  .ct-sprints{grid-template-columns:1fr;border-top:0;border-left:1px solid var(--line-2);row-gap:40px;margin-left:4px}
  .ct-sprints li{padding:0 0 0 28px}
  .ct-sprints li::before{top:2px;left:-5px}
  .ct-sprints h3{margin-top:12px}
}
