.tint{pointer-events:none;background:var(--accent);mix-blend-mode:color;opacity:.55;position:absolute;inset:0}.shade{pointer-events:none;background:radial-gradient(ellipse at center, transparent 35%, color-mix(in srgb, var(--g-night) 55%, transparent)), linear-gradient(180deg, color-mix(in srgb, var(--g-night) 35%, transparent), transparent 30% 60%, color-mix(in srgb, var(--g-night) 75%, transparent));position:absolute;inset:0}.pro-stage .shade,.end .shade{background:radial-gradient(ellipse 50% 42% at 50% 50%, color-mix(in srgb, var(--g-night) 55%, transparent), transparent 80%), radial-gradient(ellipse at center, transparent 35%, color-mix(in srgb, var(--g-night) 55%, transparent)), linear-gradient(180deg, color-mix(in srgb, var(--g-night) 35%, transparent), transparent 30% 60%, color-mix(in srgb, var(--g-night) 75%, transparent))}.on-video{color:var(--g-white);text-shadow:0 2px 18px color-mix(in srgb, var(--g-night) 70%, transparent)}.on-video .acc{color:color-mix(in srgb, var(--accent) 75%, var(--g-white))}.h2{text-transform:uppercase;letter-spacing:-.015em;margin:.7rem 0 0;font-size:clamp(1.9rem,3.6vw,3.2rem);font-weight:800;line-height:1.02}.h2 .acc{color:var(--accent);display:block}.pro{position:relative}.tk-ready .pro{height:calc(var(--n) * 100svh)}.pro-stage{background:var(--g-night);height:calc(100svh - 72px);position:sticky;top:72px;overflow:hidden}.pro-v{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1.1s;position:absolute;inset:0}.pro-v.is-on{opacity:1}.pro-text{text-align:center;place-items:center;display:grid;position:absolute;inset:0}.pro-phrase{letter-spacing:-.025em;text-wrap:balance;opacity:0;grid-area:1/1;max-width:17ch;margin:0;font-size:clamp(2.1rem,6.2vw,5.4rem);font-weight:800;line-height:1.02;transition:opacity .7s,transform .7s;transform:translateY(18px)}.pro-phrase.is-on{opacity:1;transform:none}.pro-top{justify-content:space-between;display:flex;position:absolute;top:1.4rem;left:0;right:0}.pro-top .label{color:var(--g-white);opacity:.85}.pro-ticks{gap:6px;display:none;position:absolute;bottom:1.6rem;left:0;right:0}.tk-ready .pro-ticks{display:flex}.pro-top [data-count]{visibility:hidden}.tk-ready .pro-top [data-count]{visibility:visible}.pro-ticks i{background:color-mix(in srgb, var(--g-white) 25%, transparent);flex:1;height:2px;transition:background .5s}.pro-ticks i.on{background:var(--g-white)}.pro-hint{color:var(--g-white);opacity:.8;justify-items:center;gap:.3rem;font-size:.85rem;transition:opacity .5s;display:none;position:absolute;bottom:3.4rem;left:50%;transform:translate(-50%)}.tk-ready .pro-hint{display:grid}.pro-hint svg{width:18px;height:18px}.pro.moved .pro-hint{opacity:0}.say{place-items:center;padding-block:clamp(6rem,22svh,12rem);display:grid}.say p{text-align:center;letter-spacing:-.015em;text-wrap:balance;max-width:32ch;margin:0;font-size:clamp(1.5rem,3.4vw,2.9rem);font-weight:600;line-height:1.22}.tk-ready .say .w{color:color-mix(in srgb, var(--text) 20%, transparent);transition:color .35s}.tk-ready .say .w.lit{color:var(--text)}.layers{border-top:1px solid var(--border);grid-template-columns:minmax(15rem,.75fr) 2fr;gap:clamp(2rem,5vw,5rem);padding-block:5rem;display:grid}.layers-head{align-self:start;position:sticky;top:112px}.layers-head p{max-width:24rem}.layer{border-top:1px solid var(--border);grid-template-columns:minmax(200px,280px) 1fr;align-items:center;gap:clamp(1.5rem,4vw,3.5rem);padding-block:2rem;display:grid}.layer:first-child{border-top:0;padding-top:0}.layer h3{letter-spacing:-.01em;margin:.6rem 0;font-size:clamp(1.5rem,2.6vw,2.2rem);font-weight:700}.layer p{max-width:32rem;color:var(--text-muted);margin:0}.iso{width:100%;height:auto;color:var(--accent);display:block}.iso .face{fill:var(--bg);stroke:currentColor;stroke-width:1.2px;stroke-linejoin:round}.iso .ln{fill:none;stroke:currentColor;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round}.iso .dash{stroke-dasharray:3 4}.iso .faint{opacity:.35}.iso .dim{opacity:.3}.iso .ghost .face{fill:none;stroke-dasharray:3 5;opacity:.35}@media (prefers-reduced-motion:no-preference){.tk-ready .layer .iso .now{opacity:0;transition:opacity .9s .15s,transform .9s .15s;transform:translateY(-26px)}.tk-ready .layer.in .iso .now{opacity:1;transform:none}}@media (width<=900px){.layers{grid-template-columns:1fr}.layers-head{position:static}.layer{grid-template-columns:1fr;gap:1rem}.layer .iso{max-width:300px}}.line{height:230svh;position:relative}.line-stage{background:var(--bg);min-height:calc(100svh - 72px);color:var(--text);align-content:center;gap:3.2rem;padding-block:3rem;display:grid;position:sticky;top:72px}.line h2{letter-spacing:-.02em;max-width:22ch;margin:.7rem 0 0;font-size:clamp(1.8rem,3.6vw,3.1rem);font-weight:700;line-height:1.08}.track{grid-template-columns:11rem 1fr;align-items:start;gap:1.5rem;display:grid}.track-name{font-size:1.15rem;font-weight:600}.track+.track .track-name{color:var(--text-muted)}.rail{grid-template-columns:repeat(6,1fr);padding-top:1.5rem;display:grid;position:relative}.rail:before{content:"";border-top:1px dashed var(--border-strong);position:absolute;top:4px;left:0;right:0}.rail .fill{width:calc(var(--p,1) * 100%);border-top:1px solid var(--g-white);position:absolute;top:4px;left:0}.rail .dot{top:0;left:calc(var(--p,1) * 100%);background:var(--g-white);width:9px;height:9px;box-shadow:0 0 14px 4px color-mix(in srgb, var(--accent) 75%, transparent);position:absolute;transform:translate(-50%)}.step{color:var(--text);padding-right:1rem;font-size:.92rem;line-height:1.35;transition:opacity .4s,color .4s;position:relative}.step:before{content:"";background:var(--g-white);width:7px;height:7px;transition:background .4s;position:absolute;top:calc(1px - 1.5rem);left:0}.tk-ready .step:not(.on){opacity:.45;color:var(--text-muted)}.tk-ready .step:not(.on):before{background:var(--border-strong)}.step b{letter-spacing:.14em;color:var(--link);margin-bottom:.3rem;font-family:Michroma,sans-serif;font-size:.66rem;font-weight:400;display:block}.step.on{opacity:1;color:var(--text)}.step.on:before{background:var(--g-white)}@media (width<=900px){.line{height:auto}.line-stage{min-height:0;padding-block:4rem;position:static}.track{grid-template-columns:1fr;gap:.9rem}.rail{grid-template-columns:1fr;gap:.9rem;padding:0 0 0 1.5rem}.rail:before{border-top:0;border-left:1px dashed var(--border-strong);inset:0 auto 0 3px}.rail .fill,.rail .dot{display:none}.step:before{top:.3rem;left:-1.5rem}.tk-ready .step:not(.on){opacity:1;color:var(--text)}}.impl{border-top:1px solid var(--border);padding-block:5rem}.impl-lead{max-width:40rem;margin:1rem 0 0}.impl-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;margin-top:2rem;display:none}.tk-ready .impl-tabs{display:flex}.impl-tabs button{color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.8rem 1.3rem .9rem;font-weight:600}.impl-tabs button small{letter-spacing:.14em;color:var(--link);margin-bottom:.2rem;font-family:Michroma,sans-serif;font-size:.6rem;font-weight:400;display:block}.impl-tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}.impl-sol{border:1px solid var(--border);grid-template-columns:1.75fr 1fr;margin-top:1.5rem;display:grid}.tk-ready .impl-sol:not(.is-active){display:none}.impl-media{isolation:isolate;aspect-ratio:16/10;background:var(--g-night);color:var(--g-white);position:relative;overflow:hidden}.impl-media video{z-index:-3;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.impl-media .tint{z-index:-2}.impl-media .sheet{z-index:-1;background:linear-gradient(color-mix(in srgb, var(--g-white) 6%, transparent) 1px, transparent 1px) 0 0 / 40px 40px, linear-gradient(90deg, color-mix(in srgb, var(--g-white) 6%, transparent) 1px, transparent 1px) 0 0 / 40px 40px, color-mix(in srgb, var(--g-night) var(--sheet,40%), transparent);position:absolute;inset:0}.impl-hud{justify-content:space-between;gap:1rem;font-size:.85rem;display:flex;position:absolute;top:.9rem;left:1.1rem;right:1.1rem}.impl-hud .label{color:color-mix(in srgb, var(--accent) 60%, var(--g-white))}.impl-hud b{font-family:Michroma,sans-serif;font-size:.75rem;font-weight:400}.impl-hud .stage{display:none}.tk-ready .impl-hud .stage{display:inline}.scheme{--now:color-mix(in srgb, var(--accent) 55%, var(--g-white));width:100%;height:calc(100% - 2.6rem);filter:drop-shadow(0 0 1.5px var(--g-night)) drop-shadow(0 0 6px color-mix(in srgb, var(--g-night) 70%, transparent));position:absolute;inset:2.6rem 0 0}.scheme .ln{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.scheme .dash{stroke-dasharray:5 6}.scheme .faint{opacity:.5}.scheme .fill{fill:currentColor}.scheme .bgf{fill:color-mix(in srgb, var(--g-night) 80%, transparent)}.scheme .hatch{stroke:currentColor;stroke-width:1.2px;stroke-dasharray:4 5}.scheme text{fill:currentColor;font:600 14px var(--font-text)}.scheme text.small{font-size:12px;font-weight:500}.scheme g[data-s]{transition:opacity .7s,color .7s}.tk-ready .scheme g[data-s]{opacity:0}.tk-ready .scheme g.past{opacity:.62}.tk-ready .scheme g.now{opacity:1;color:var(--now)}.tk-ready .scheme g.now .dr{stroke-dasharray:1;animation:1.6s both draw}@keyframes draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.scheme .ping{transform-box:fill-box;transform-origin:50%;animation:1.8s ease-out infinite ping}.scheme .ping.p2{animation-delay:.9s}@keyframes ping{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.8)}}.impl-steps{border-left:1px solid var(--border);grid-auto-rows:auto;align-content:start;margin:0;padding:0;list-style:none;display:grid}.impl-steps li{border-top:1px solid var(--border)}.impl-steps li:first-child{border-top:0}.impl-steps button{width:100%;color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:2.2rem 1fr;gap:.25rem .7rem;padding:.8rem 1.2rem;display:grid;position:relative}.impl-steps b{letter-spacing:.12em;color:var(--link);padding-top:.2rem;font-family:Michroma,sans-serif;font-size:.68rem;font-weight:400}.impl-steps strong{color:var(--text);font-weight:700}.impl-steps span{color:var(--text);grid-column:2;font-size:.92rem;line-height:1.45;display:block}.tk-ready .impl-steps li:not(.past):not(.on) strong{color:var(--text-muted)}.tk-ready .impl-steps li:not(.on) span{display:none}.impl-steps li.on button{background:var(--surface)}.impl-steps .bar{background:var(--accent);width:0;height:2px;position:absolute;bottom:0;left:0}.impl.auto .impl-steps li.on .bar{animation:implbar var(--step-ms) linear both}@keyframes implbar{to{width:100%}}.impl-more{border-top:1px solid var(--border);color:var(--link);padding:.9rem 1.2rem;font-weight:600;text-decoration:none;display:block}@media (width<=1000px){.impl-sol{grid-template-columns:1fr}.impl-media{aspect-ratio:4/3}.impl-steps{border-left:0;border-top:1px solid var(--border)}}@media (width<=600px){.impl-tabs button{padding:.7rem .8rem .8rem}.scheme text{font-size:24px}.scheme text.small,.scheme g.small{display:none}.scheme .ln{stroke-width:2.4px}}.end{isolation:isolate;text-align:center;background:var(--g-night);place-items:center;min-height:82svh;display:grid;position:relative;overflow:hidden}.end video{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.end .tint,.end .shade{z-index:-1}.end h2{text-transform:uppercase;letter-spacing:-.02em;margin:.8rem 0 0;font-size:clamp(2.4rem,6.4vw,5.6rem);font-weight:800;line-height:.98}.end p{max-width:34rem;margin:1.2rem auto 0}.end .label{color:color-mix(in srgb, var(--accent) 70%, var(--g-white))}@media (prefers-reduced-motion:reduce){.pro-v,.pro-phrase,.say .w,.step,.scheme g[data-s]{transition:none!important}.scheme .ping,.tk-ready .scheme g.now .dr{animation:none!important}}
