.frame-sec{padding:clamp(4.5rem,10vw,8rem) 0;position:relative}.frame-sec .fs-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,6vw,5.5rem);display:grid}.frame-sec h2{font-family:var(--serif,"Instrument Serif"),Georgia,serif;letter-spacing:-.012em;color:var(--ink,#f1ede6);max-width:16ch;margin:.9rem 0 1.1rem;font-size:clamp(2.1rem,1.4rem + 2.6vw,3.6rem);font-weight:400;line-height:1.04}.frame-sec .fs-lead{color:var(--ink-dim,#a39d92);max-width:46ch;margin:0 0 2rem;line-height:1.65}.frame-sec .fs-list{border-top:1px solid #f1ede61a;margin:0;padding:0;list-style:none}.frame-sec .fs-item{all:unset;box-sizing:border-box;cursor:pointer;border-bottom:1px solid #f1ede61a;grid-template-columns:18px 1fr;gap:.15rem .9rem;width:100%;padding:.95rem .25rem;transition:background-color .25s;display:grid}.frame-sec .fs-item:hover,.frame-sec .fs-item.is-on{background:#c1925a12}.frame-sec .fs-item:focus-visible{outline:2px solid var(--accent,#c1925a);outline-offset:2px}.frame-sec .fs-key{border:1.5px solid var(--accent,#c1925a);border-radius:3px;grid-row:1/3;align-self:start;width:12px;height:12px;margin-top:.35rem}.frame-sec .fk-light{background:#f2b86659;border-color:#f2b866}.frame-sec .fk-anchor{border-style:dashed;border-radius:50%}.frame-sec .fk-edge,.frame-sec .fk-wire{border-radius:50%}.frame-sec .fk-water{background:#c1925a59}.frame-sec .fs-t{color:var(--ink,#f1ede6);font-weight:500}.frame-sec .fs-b{color:var(--ink-dim,#a39d92);font-size:.92rem;line-height:1.5}.frame-sec .fs-figure{color:#c1925a38;margin:0}.frame-sec svg{width:100%;height:auto;max-height:78vh;display:block}.frame-sec figcaption{color:var(--ink-faint,#6b665d);text-align:center;margin-top:.9rem;font-size:.8rem}.frame-sec .fd-frame{fill:#131316;stroke:#4a443b;stroke-width:3px}.frame-sec .fd-open{fill:#0d0d0f}.frame-sec .fd-lattice{color:#2a2723}.frame-sec .fd-seam{stroke:#3a352e;stroke-width:3px}.frame-sec [class^=fd-]>*{transition:opacity .35s,stroke .35s,fill .35s,filter .35s}.frame-sec .fd-side>*,.frame-sec .fd-edge>*{fill:#0b0b0c;stroke:var(--accent,#c1925a);stroke-width:4px}.frame-sec .fd-water>*{fill:#c1925a59;stroke:var(--accent,#c1925a);stroke-width:4px}.frame-sec .fd-wire path{fill:none;stroke:var(--accent,#c1925a);stroke-width:6px;stroke-dasharray:18 14}.frame-sec .fd-wire circle{fill:#0b0b0c;stroke:var(--accent,#c1925a);stroke-width:4px}.frame-sec .fd-light rect{fill:none;stroke:#f2b866;stroke-width:7px;opacity:.55}.frame-sec .fd-anchor circle{fill:none;stroke:#f1ede659;stroke-width:4px;stroke-dasharray:6 6}.frame-sec .is-dim>*{opacity:.18}.frame-sec .is-on>*{filter:drop-shadow(0 0 10px #f2b866bf)}.frame-sec .fd-side.is-on>*,.frame-sec .fd-edge.is-on>*,.frame-sec .fd-water.is-on>*,.frame-sec .fd-wire.is-on circle{fill:var(--accent,#c1925a)}.frame-sec .fd-light.is-on rect{opacity:1}.frame-sec .fd-anchor.is-on circle{stroke:#f1ede6}.frame-sec .fd-frame{stroke-dasharray:4800;stroke-dashoffset:4800px}.frame-sec .fd-light,.frame-sec .fd-anchor,.frame-sec .fd-wire,.frame-sec .fd-water,.frame-sec .fd-side,.frame-sec .fd-edge{opacity:0;transition:opacity .5s}.frame-sec.is-in .fd-frame{stroke-dashoffset:0;transition:stroke-dashoffset 1.4s cubic-bezier(.65,0,.35,1)}.frame-sec.is-in .fd-light{opacity:1;transition-delay:.9s}.frame-sec.is-in .fd-side{opacity:1;transition-delay:1.1s}.frame-sec.is-in .fd-edge{opacity:1;transition-delay:1.25s}.frame-sec.is-in .fd-wire{opacity:1;transition-delay:1.4s}.frame-sec.is-in .fd-water{opacity:1;transition-delay:1.55s}.frame-sec.is-in .fd-anchor{opacity:1;transition-delay:1.7s}@media (prefers-reduced-motion:reduce){.frame-sec .fd-frame{stroke-dasharray:none;stroke-dashoffset:0}.frame-sec [class^=fd-]{opacity:1!important;transition:none!important}}@media (width<=860px){.frame-sec .fs-grid{grid-template-columns:1fr}.frame-sec .fs-figure{z-index:2;padding:calc(64px + env(safe-area-inset-top,0px)) 0 1.25rem;background:linear-gradient(#0b0b0c 88%,#0b0b0c00);order:-1;margin:0 -1.4rem;position:sticky;top:0}.frame-sec .fd-side.is-on>*,.frame-sec .fd-edge.is-on>*,.frame-sec .fd-water.is-on>*,.frame-sec .fd-wire.is-on circle{stroke-width:8px}.frame-sec .fd-wire.is-on path,.frame-sec .fd-light.is-on rect{stroke-width:12px}.frame-sec .fd-anchor.is-on circle{stroke-width:7px}.frame-sec .is-on>*{filter:drop-shadow(0 0 16px #f2b866f2)}.frame-sec svg{max-height:38vh;margin:0 auto}.frame-sec figcaption{display:none}}.frame-sec .fs-world{transform-box:fill-box;transform-origin:50%;transition:transform .9s cubic-bezier(.65,0,.35,1)}.frame-sec .fs-world.is-grow{transform:none}.frame-sec .fs-ghosts{animation:.6s both fg-in}@keyframes fg-in{0%{opacity:0}to{opacity:1}}.frame-sec .fg-solid{fill:var(--frame-ghost-fill)}.frame-sec .fg{fill:none;stroke:#e6c48f;stroke-width:5px;stroke-dasharray:16 12;stroke-linecap:round}.frame-sec .fg-water{stroke:#8fb7c9;stroke-width:4px;stroke-dasharray:6 10}.frame-sec .fs-world.is-grow .fg{animation:3.2s ease-in-out infinite fg-breathe}.frame-sec .fs-world.is-grow .fg-stone{animation-delay:.8s}.frame-sec .fs-world.is-grow .fg-water{animation-delay:1.6s}@keyframes fg-breathe{0%,to{opacity:.3}50%{opacity:.85}}.frame-sec .fs-grow{all:unset;box-sizing:border-box;cursor:pointer;min-height:44px;color:var(--ink,#f1ede6);border:1px solid #c1925a8c;border-radius:999px;align-items:center;margin-top:1.4rem;padding:0 1.25rem;font-size:.95rem;transition:background-color .25s;display:inline-flex}.frame-sec .fs-grow:hover,.frame-sec .fs-grow[aria-pressed=true]{background:#c1925a24}.frame-sec .fs-grow:focus-visible{outline:2px solid var(--accent,#c1925a);outline-offset:3px}@media (prefers-reduced-motion:reduce){.frame-sec .fs-world,.frame-sec .fs-ghosts{transition:none;animation:none}.frame-sec .fs-world.is-grow .fg{opacity:.7;animation:none}}
