.et-loop{--accent-h:340;--accent-c:0.18;--accent-l:0.62;--accent:var(--accent-2);--accent-glow:color-mix(in oklab,var(--accent-2) 22%,transparent);--hairline:var(--line);--hairline-2:var(--line);--fg-faint:var(--fg-mute);--f-display:"Inter Tight",system-ui,sans-serif;--f-mono:"JetBrains Mono",ui-monospace,monospace;--f-serif:"Instrument Serif","Inter Tight",serif;--gutter:var(--pad-x);--max:var(--maxw)}:root[style*=accent-h] .et-loop{--accent-h:var(--accent-h)}.et-loop{position:relative}.et-loop .loop-progress{position:fixed;left:0;right:0;top:0;height:2px;background:transparent;z-index:70;pointer-events:none}.et-loop .loop-progress .fill{height:100%;width:0;background:var(--accent);box-shadow:0 0 8px var(--accent);transition:width .1s linear}.et-loop .loop-progress .pill{position:absolute;top:76px;right:24px;font-family:var(--f-mono);font-size:10px;color:var(--fg-dim);letter-spacing:.14em;background:color-mix(in oklab,var(--bg) 70%,transparent);padding:6px 10px;border:1px solid var(--hairline);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:auto;display:flex;align-items:center;gap:10px;text-transform:uppercase}.et-loop .loop-progress .pill .accent{color:var(--accent)}.et-loop .loop-progress .pill .sep{color:var(--fg-faint);opacity:.5}.et-loop .loop-progress .pill .autoplay{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:1px solid var(--hairline);color:var(--fg-dim);font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:4px 9px 4px 8px;cursor:pointer;transition:border-color .2s,color .2s,background .2s;display:inline-flex;align-items:center;gap:6px;line-height:1}.et-loop .loop-progress .pill .autoplay:hover{border-color:var(--accent);color:var(--fg)}.et-loop .loop-progress .pill .autoplay.on{border-color:var(--accent);color:var(--accent);background:var(--accent-glow)}.et-loop .loop-progress .pill .autoplay .ic{font-size:9px;line-height:1}@media (max-width:720px){.et-loop .loop-progress .pill{top:64px;right:8px;padding:5px 8px;font-size:9.5px;gap:6px}.et-loop .loop-progress .pill #lp-stage,.et-loop .loop-progress .pill .sep:first-of-type{display:none}}.et-loop__intro{max-width:var(--max);margin:0 auto;padding:0 0 clamp(40px,6vh,64px)}.et-loop__steps{display:grid;grid-template-columns:repeat(10,1fr);border-top:1px solid var(--hairline);padding-top:18px;grid-gap:0;gap:0}.et-loop__steps .step{padding:8px 12px 8px 0;border-right:1px solid var(--hairline);font-family:var(--f-mono);font-size:10px;color:var(--fg-dim);letter-spacing:.12em}.et-loop__steps .step:last-child{border-right:0}.et-loop__steps .step .n{color:var(--accent);display:block;margin-bottom:4px}.et-loop__steps .step .t{color:var(--fg)}@media (max-width:1000px){.et-loop__steps{grid-template-columns:repeat(5,1fr)}}@media (max-width:600px){.et-loop__steps{grid-template-columns:repeat(2,1fr)}}.et-loop .act{position:relative;min-height:220vh;padding:0 var(--gutter);max-width:var(--max);margin:0 auto;border-top:1px solid var(--hairline)}.et-loop .act-inner{display:grid;grid-template-columns:1fr 1.1fr;grid-gap:80px;gap:80px;align-items:start;padding:80px 0}.et-loop .act.flip .act-inner{grid-template-columns:1.1fr 1fr}.et-loop .act.flip .act-text{order:2}.et-loop .act.flip .act-viz{order:1}.et-loop .act-text{padding-top:8vh}.et-loop .act-text .act-eyebrow{font-family:var(--f-mono);font-size:11px;color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin-bottom:24px;display:flex;align-items:baseline;gap:14px}.et-loop .act-text .act-eyebrow .step-num{color:var(--accent)}.et-loop .act-text .act-eyebrow .step-name{color:var(--fg-dim)}.et-loop .act-text h2{font-family:var(--f-display);font-weight:400;font-size:clamp(34px,4.4vw,64px);line-height:1.02;letter-spacing:-.03em;margin-bottom:28px;text-wrap:balance;color:var(--fg)}.et-loop .act-text h2 .serif,.et-loop .act-text h3 .serif,.et-loop .loop-outro h2 .serif,.et-loop h1 .serif{font-family:var(--f-serif);font-style:italic;font-weight:400}.et-loop .act-text h2 .accent,.et-loop .loop-outro h2 .accent{color:var(--accent)}.et-loop .act-text .lede{font-size:18px;color:var(--fg-dim);line-height:1.55;max-width:540px;margin-bottom:80vh}.et-loop .act-text .beats{display:flex;flex-direction:column;gap:60vh;margin-top:16vh}.et-loop .act-text .beat{max-width:520px;opacity:.35;transition:opacity .4s ease;border-left:1px solid var(--hairline);padding:16px 0 16px 24px}.et-loop .act-text .beat.is-active{opacity:1;border-left-color:var(--accent)}.et-loop .act-text .beat .b-num{font-family:var(--f-mono);font-size:10px;color:var(--accent);letter-spacing:.18em;margin-bottom:8px}.et-loop .act-text .beat h3{font-family:var(--f-display);font-weight:500;font-size:22px;line-height:1.25;letter-spacing:-.015em;margin-bottom:12px;color:var(--fg)}.et-loop .act-text .beat p{color:var(--fg-dim);font-size:15px;line-height:1.6;margin:0}.et-loop .act-viz{position:-webkit-sticky;position:sticky;top:8vh;height:84vh;display:flex;align-items:center;justify-content:center}.et-loop .act-viz .stage{width:100%;height:100%;border:1px solid var(--hairline);background:linear-gradient(180deg,var(--bg-2),var(--bg));position:relative;overflow:hidden}.et-loop .act-viz .stage .corner-mark{position:absolute;width:14px;height:14px;border:1px solid var(--accent);pointer-events:none;opacity:.6}.et-loop .stage .corner-mark.tl{top:-1px;left:-1px;border-right:0;border-bottom:0}.et-loop .stage .corner-mark.tr{top:-1px;right:-1px;border-left:0;border-bottom:0}.et-loop .stage .corner-mark.bl{bottom:-1px;left:-1px;border-right:0;border-top:0}.et-loop .stage .corner-mark.br{bottom:-1px;right:-1px;border-left:0;border-top:0}.et-loop .stage canvas,.et-loop .stage svg{position:absolute;inset:0;width:100%;height:100%;display:block}.et-loop .stage .toolbar{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;align-items:center;font-family:var(--f-mono);font-size:10px;color:var(--fg-faint);letter-spacing:.12em;pointer-events:none;z-index:3}.et-loop .stage .toolbar .right{color:var(--accent)}.et-loop .stage .footer{position:absolute;bottom:14px;left:14px;right:14px;display:flex;justify-content:space-between;align-items:center;font-family:var(--f-mono);font-size:9.5px;color:var(--fg-faint);letter-spacing:.12em;pointer-events:none;z-index:3}.et-loop .stage .footer .right{color:var(--fg-dim)}.et-loop text.lp-text{font-family:JetBrains Mono,monospace;letter-spacing:.05em}.et-loop .iface-wrap-lp{position:absolute;inset:0;padding:36px 16px;z-index:1}.et-loop .iface-wrap-lp canvas{width:100%;height:100%;display:block}.et-loop .loop-outro{border-top:1px solid var(--hairline);padding:140px var(--gutter) 60px;max-width:var(--max);margin:0 auto}.et-loop .loop-outro .num{font-family:var(--f-mono);font-size:11px;color:var(--accent);letter-spacing:.18em;margin-bottom:32px}.et-loop .loop-outro h2{font-family:var(--f-display);font-weight:400;font-size:clamp(36px,5.4vw,80px);line-height:1;letter-spacing:-.03em;max-width:1200px;margin-bottom:56px;color:var(--fg)}@media (max-width:1000px){.et-loop .act{min-height:auto;padding:0 var(--gutter)}.et-loop .act-inner,.et-loop .act.flip .act-inner{display:flex;flex-direction:column;gap:24px;padding:48px 0 56px}.et-loop .act-text,.et-loop .act.flip .act-text{padding-top:0;order:2;width:100%;min-width:0}.et-loop .act-viz,.et-loop .act.flip .act-viz{position:relative;top:0;width:100%;min-width:0;height:56vh;min-height:340px;max-height:520px;margin:0;order:1}.et-loop .act-text h2{margin-bottom:18px;font-size:clamp(28px,5.4vw,44px)}.et-loop .act-text .lede{max-width:none;margin-bottom:28px;font-size:16px}.et-loop .act-text .beats{gap:18px;margin-top:8px}.et-loop .act-text .beat{opacity:1;border-left-color:var(--hairline);padding:14px 0 14px 18px}.et-loop .act-text .beat h3{font-size:18px;margin-bottom:8px}.et-loop .act-text .beat p{font-size:14.5px}.et-loop .stage .footer,.et-loop .stage .toolbar{font-size:9px;letter-spacing:.1em}.et-loop .iface-wrap-lp{padding:28px 10px}}@media (max-width:600px){.et-loop .act{padding:0 16px}.et-loop .act-inner{padding:36px 0 48px;gap:20px}.et-loop .act-viz{height:52vh;min-height:320px}.et-loop .act-text .act-eyebrow{font-size:10px;gap:10px;flex-wrap:wrap;margin-bottom:14px}.et-loop .act-text h2{font-size:clamp(26px,7.2vw,36px)}.et-loop .act-text .lede{font-size:14.5px;margin-bottom:22px}.et-loop .act-text .beats{gap:14px}.et-loop .act-text .beat{padding:12px 0 12px 14px}.et-loop .act-text .beat h3{font-size:16.5px}.et-loop .act-text .beat p{font-size:13.5px;line-height:1.55}.et-loop .loop-outro{padding:80px 16px 40px}.et-loop .loop-outro h2{font-size:clamp(28px,8vw,44px);margin-bottom:32px}}