:root{--dusk:#101822;--water:#123231;--panel:#0b1118;--amber:#e2653a;--ink:#e6e8e6;--quiet:#949eac;--vein:#34454d;--stem:#53625d;--font-display:"Ortica Angular", "Ortica Angular Fallback", "Times New Roman", serif;--font-sub:"Ortica Linear", "Ortica Linear Fallback", "Times New Roman", serif;--font-body:"Host Grotesk", "Host Grotesk Fallback", Arial, sans-serif;--font-mono:"Martian Mono", "Martian Mono Fallback", "Courier New", monospace;--focus-ms:.12s;--pad:clamp(1.25rem, 4vw, 3.5rem)}@font-face{font-family:Ortica Angular;src:url(/fonts/ortica/OrticaAngular-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Ortica Linear;src:url(/fonts/ortica/OrticaLinear-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Ortica Linear;src:url(/fonts/ortica/OrticaLinear-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Host Grotesk;src:url(/fonts/host-grotesk/host-grotesk-latin-wght-normal.woff2)format("woff2");font-weight:300 800;font-style:normal;font-display:swap}@font-face{font-family:Host Grotesk;src:url(/fonts/host-grotesk/host-grotesk-latin-wght-italic.woff2)format("woff2");font-weight:300 800;font-style:italic;font-display:swap}@font-face{font-family:Martian Mono;src:url(/fonts/martian-mono/martian-mono-latin-variable.woff2)format("woff2");font-weight:100 800;font-stretch:75% 112.5%;font-style:normal;font-display:swap}@font-face{font-family:Ortica Angular Fallback;src:local(Times New Roman),local(Times);size-adjust:96%;ascent-override:95%;descent-override:25%;line-gap-override:0%}@font-face{font-family:Ortica Linear Fallback;src:local(Times New Roman),local(Times);size-adjust:98%;ascent-override:95%;descent-override:25%;line-gap-override:0%}@font-face{font-family:Host Grotesk Fallback;src:local(Arial),local(Helvetica);size-adjust:102%;ascent-override:95%;descent-override:25%;line-gap-override:0%}@font-face{font-family:Martian Mono Fallback;src:local(Courier New),local(Courier);size-adjust:104%;ascent-override:90%;descent-override:25%;line-gap-override:0%}*,:before,:after{box-sizing:border-box}*{margin:0}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--dusk)}body{background:var(--dusk);min-height:100vh;color:var(--ink);font-family:var(--font-body);font-size:1rem;line-height:1.5}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.sr{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mono{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}[data-scene]{isolation:isolate;background:var(--dusk);height:max(100dvh,40rem);position:relative;overflow:hidden}.frame{z-index:0;pointer-events:none;border:1px solid var(--vein);position:absolute;inset:.75rem}.frame svg{width:100%;height:10px;display:block;position:absolute;top:0;left:0}.frame .tick{stroke:var(--vein);stroke-width:1px;shape-rendering:crispedges}.pond{z-index:0;background:var(--water);border-top:1px solid var(--stem);height:30%;position:absolute;bottom:.75rem;left:.75rem;right:.75rem}[data-perch]{z-index:1;pointer-events:none;width:100%;height:52%;position:absolute;bottom:calc(30% + .75rem);left:0;overflow:visible}[data-perch] path{fill:none;stroke:var(--stem);stroke-width:1.25px;vector-effect:non-scaling-stroke;stroke-linecap:round}[data-perch] path.perch-stem{stroke:var(--ink);stroke-width:1.5px}[data-perch] path.seed{stroke-width:1px}.intro{z-index:3;top:clamp(1.75rem,6vh,3.5rem);left:var(--pad);right:var(--pad);position:absolute}.intro .mark{color:var(--ink);font-family:var(--font-body);letter-spacing:0;text-transform:none;font-size:1.25rem;font-weight:700}.intro h1{max-width:13ch;font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;margin-top:1rem;font-size:clamp(1.85rem,1rem + 4.6vw,4.75rem);font-weight:700;line-height:1.02}.intro .line{max-width:34ch;color:var(--quiet);text-wrap:balance;margin-top:1.1rem;font-size:1.0625rem}.coords{z-index:3;left:var(--pad);color:var(--quiet);position:absolute;bottom:1.75rem}.contact{z-index:3;right:var(--pad);min-height:2.75rem;text-decoration:underline;text-decoration-color:var(--amber);text-underline-offset:.4em;transition:color var(--focus-ms) linear;align-items:center;padding:0 .25rem;text-decoration-thickness:1px;display:inline-flex;position:absolute;bottom:.75rem}.contact:hover{color:var(--amber)}[data-dragonfly]{z-index:4;pointer-events:none;aspect-ratio:160/120;will-change:transform;height:120px;position:absolute;top:0;left:0}[data-dragonfly]:not([data-placed]){visibility:hidden}[data-dragonfly] svg{width:100%;height:100%;display:block;overflow:visible}.df-line{fill:none;stroke:var(--ink);stroke-width:1.1px;stroke-linecap:round;stroke-linejoin:round}.df-amber{fill:none;stroke:var(--amber);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}.df-fill{fill:var(--amber);stroke:var(--amber);stroke-width:1px;stroke-linejoin:round}.df-tick{fill:none;stroke:var(--dusk);stroke-width:1.2px;stroke-linecap:butt}.df-patch{fill:var(--amber);stroke:none}.df-solid{fill:var(--dusk);stroke:var(--amber);stroke-width:1.3px}.df-vein{fill:none;stroke:var(--quiet);stroke-width:.6px;stroke-linecap:round}[data-wing]{transform-box:fill-box}[data-wing][data-side=l]{transform-origin:100% 60%}[data-wing][data-side=r]{transform-origin:0 60%}#df-wing-hl{transform-origin:100% 15%}#df-wing-hr{transform-origin:0 15%}.df-wing-shape{fill:#ece6da0f;stroke:var(--ink);stroke-width:1px;stroke-linejoin:round}[data-pin]{z-index:3;left:var(--x);top:var(--y);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:0;align-items:center;gap:.5rem;min-height:2.75rem;padding:.5rem .75rem .5rem .5rem;display:inline-flex;position:absolute}[data-pin-landing]{background:var(--amber);border-radius:50%;flex:none;width:.5625rem;height:.5625rem}[data-pin][aria-expanded=true] [data-pin-landing]{box-shadow:inset 0 0 0 1.5px var(--amber);background:0 0}.pin-leader{background:var(--vein);flex:none;width:1.25rem;height:1px}.pin-label{transition:color var(--focus-ms) linear;font-size:.875rem;font-weight:500}[data-pin]:hover .pin-label{color:var(--amber)}[data-panel]{z-index:5;inset:0 var(--pad) 0 auto;background:var(--panel);border:1px solid var(--vein);width:min(34rem,100% - 2rem);height:fit-content;max-height:calc(100% - 2rem);margin-block:auto;margin-inline:0;padding:1.25rem 1.5rem 1.5rem;position:absolute;overflow:auto}.panel-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.panel-head .mono{color:var(--quiet)}[data-panel-close]{cursor:pointer;min-height:2.75rem;color:var(--ink);transition:color var(--focus-ms) linear;background:0 0;border:0;margin-right:-.75rem;padding:0 .75rem}[data-panel-close]:hover{color:var(--amber)}.panel-title{font-family:var(--font-sub);margin-top:.25rem;font-size:clamp(1.75rem,1.2rem + 2vw,2.5rem);font-weight:300;line-height:1.1}.panel-title:focus{outline:none}.panel-title:focus-visible{outline:2px solid var(--amber);outline-offset:4px}.panel-line{color:var(--ink);max-width:36ch;margin-top:.6rem}.loop-frame{aspect-ratio:16/9;border:1px solid var(--vein);margin-top:1.25rem;position:relative}.loop-frame .mono{color:var(--quiet);position:absolute;top:.5rem;left:.6rem}.stat{border-top:1px solid var(--vein);color:var(--quiet);margin-top:1.25rem;padding-top:1rem}.stat .num{font-family:var(--font-mono);color:var(--ink);letter-spacing:0;margin-bottom:.25rem;font-size:1.5rem;display:block}.panel-actions{margin-top:1.25rem}.visit{min-height:2.75rem;text-decoration:underline;text-decoration-color:var(--amber);text-underline-offset:.4em;transition:color var(--focus-ms) linear;align-items:center;text-decoration-thickness:1px;display:inline-flex}.visit:hover{color:var(--amber)}[data-scene]:has([data-panel]:not([hidden])) [data-dragonfly]{z-index:6}@media (width<=40rem){[data-dragonfly]{height:84px}[data-pin]{left:var(--mx,var(--x));top:var(--my,var(--y))}.intro .line{font-size:1rem}[data-perch]{height:33%}[data-panel]{width:auto;max-height:70%;margin:0;padding:1rem 1rem 1.25rem;inset:auto .75rem .75rem}}
