.landing .rung-card{border-top:1px solid var(--line);grid-template-columns:56px minmax(0,1fr) clamp(160px,18vw,220px);align-items:start;gap:clamp(18px,2.6vw,40px);padding:clamp(24px,3vw,36px) 0;display:grid;position:relative}.landing .rung-card:first-child{border-top:0}.landing .rung-card:before{content:"";background:var(--paper);border:2px solid var(--ink-mute);width:14px;height:14px;box-shadow:0 0 0 4px var(--paper);transition:background .3s, border-color .3s, transform .3s var(--ease), box-shadow .3s;z-index:2;border-radius:50%;position:absolute;top:clamp(30px,3.4vw,44px);left:21px}.landing .rung-card.is-in:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px var(--paper), 0 0 0 7px color-mix(in oklch, var(--accent) 22%, transparent)}.landing .rung-num{font-family:var(--font-serif);letter-spacing:-.04em;color:var(--accent-deep);text-align:left;white-space:nowrap;grid-area:1/1;margin-left:44px;font-size:clamp(2.2rem,3vw,3rem);font-style:italic;line-height:.8}@media (max-width:760px){.landing .rung-num{margin-left:0}.landing .rung-card:before{display:none}}.landing .rung-main{grid-area:1/2;gap:14px;min-width:0;display:grid}.landing .rung-head{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.landing .rung-chip{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:var(--accent-deep);background:color-mix(in oklch, var(--accent-soft) 65%, var(--paper));border:1px solid color-mix(in oklch, var(--accent) 28%, transparent);border-radius:999px;padding:4px 10px;font-size:10.5px}.landing .rung-title{margin:0;font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.1}.landing .rung-desc{color:var(--ink-soft);max-width:56ch;font-size:clamp(.98rem,1.1vw,1.06rem);line-height:1.5}.landing .rung-patterns{flex-wrap:wrap;gap:7px;display:flex}.landing .rung-patterns li{font-family:var(--font-mono);letter-spacing:.01em;white-space:nowrap;background:color-mix(in oklch, var(--accent-soft) 45%, var(--paper));border:1px solid color-mix(in oklch, var(--accent) 18%, transparent);color:var(--ink-2);transition:transform .15s var(--ease), background .15s, border-color .15s;border-radius:999px;padding:5px 11px;font-size:11.5px}.landing .rung-patterns li:hover{background:color-mix(in oklch, var(--accent-soft) 80%, var(--paper));border-color:color-mix(in oklch, var(--accent) 40%, transparent);transform:translateY(-2px)}.landing .rung-patterns li.more{color:var(--ink-soft);background:0 0;border-style:dashed}.landing .rung-cta{font-family:var(--font-mono);letter-spacing:.04em;color:var(--accent-deep);align-items:center;gap:8px;margin-top:2px;font-size:12.5px;font-weight:500;display:inline-flex}.landing .rung-cta .arrow{transition:transform .2s var(--ease)}.landing .rung-card:hover .rung-cta .arrow{transform:translate(4px)}.landing .rung-aside{grid-area:1/3;align-self:center}.landing .rung-viz{aspect-ratio:4/3;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r);place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.landing .rung-viz svg{width:78%;height:78%;overflow:visible}.landing .rung-viz .vz-node{fill:var(--paper);stroke:var(--accent);stroke-width:2.4px}.landing .rung-viz .vz-core{fill:var(--accent)}.landing .rung-viz .vz-edge{stroke:var(--accent);stroke-width:1.8px;opacity:.45;fill:none}.landing .rung-viz .vz-ring{fill:none;stroke:var(--accent);stroke-width:1.6px;opacity:.3}.landing .rung-viz__tag{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:var(--ink-mute);font-size:9px;position:absolute;bottom:8px;left:10px}@media (max-width:760px){.landing .rung-card{grid-template-columns:1fr;gap:16px}.landing .rung-num{grid-row:auto;font-size:2.2rem}.landing .rung-main,.landing .rung-aside{grid-area:auto/1}.landing .rung-aside{max-width:260px}}.landing .rung-viz .vz-pulse{animation:2.8s ease-in-out infinite lp-vz-pulse}.landing .rung-viz .vz-pulse:nth-of-type(2){animation-delay:.5s}.landing .rung-viz .vz-pulse:nth-of-type(3){animation-delay:1s}.landing .rung-viz .vz-pulse:nth-of-type(4){animation-delay:1.5s}@keyframes lp-vz-pulse{0%,70%,to{opacity:.35}25%,45%{opacity:1}}@media (prefers-reduced-motion:reduce){.landing .vz-pulse{opacity:.7;animation:none}}
