/* A quiet, interactive constellation. All styles stay inside this section. */
poyomi-flow.pm-flow{--flow-white:#fff9f4;--flow-muted:#d7c5d2;--flow-rose:#e1bdca;--flow-ink:#281724;display:block;position:relative;isolation:isolate;overflow:hidden;background:var(--flow-ink);color:var(--flow-white);margin:30px 0 0}
.pm-flow:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 76% 43%,#84597938,transparent 46%),radial-gradient(ellipse at 5% 100%,#a66a7315,transparent 48%),linear-gradient(115deg,#281724,#341f33 64%,#2c1a2b)}
.pm-flow:after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background-image:linear-gradient(#d8b7cb05 1px,transparent 1px),linear-gradient(90deg,#d8b7cb05 1px,transparent 1px);background-size:65px 65px;mask-image:linear-gradient(90deg,transparent,#000 75%)}
.pm-flow .pm-flow-inner{display:grid;grid-template-columns:minmax(280px,.84fr) minmax(0,1.6fr);column-gap:50px;align-items:center;padding-top:88px;padding-bottom:34px;position:relative}
.pm-flow-eyebrow,.pm-flow-kicker{display:block;font-size:10px;letter-spacing:.2em;font-weight:600;line-height:1.6;color:var(--flow-rose)}
.pm-flow .pm-flow-copy h2{font-size:clamp(44px,4.8vw,72px);line-height:1.04;letter-spacing:-.065em;max-width:370px;margin:22px 0 24px;color:var(--flow-white)}
.pm-flow .pm-flow-intro{font-size:15px;line-height:1.85;color:var(--flow-muted);max-width:350px;margin-bottom:0}
.pm-flow-panels{margin-top:44px;min-height:213px}
.pm-flow-panel{display:none}.pm-flow-panel.is-active{display:block;animation:pm-flow-reveal .4s ease-out}
.pm-flow .pm-flow-panel h3{font-size:29px;letter-spacing:-.04em;line-height:1.2;margin:12px 0 15px;color:var(--flow-white)}
.pm-flow .pm-flow-panel p{font-size:14px;color:var(--flow-muted);line-height:1.85;max-width:360px;margin-bottom:18px}
.pm-flow .pm-flow-link{font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:18px;line-height:1.6;border-bottom:1px solid #c69bad60;padding:3px 0 8px;color:var(--flow-white)}
.pm-flow .pm-flow-link:hover{border-color:var(--flow-white)}
.pm-flow-controls:not([hidden]){display:flex;align-items:center;gap:17px;margin-top:20px}.pm-flow-controls button{width:42px;height:42px;border:1px solid #b992aa5c;border-radius:50%;background:transparent;color:var(--flow-white);font-size:20px;cursor:pointer;transition:background .2s}.pm-flow-controls button:hover{background:#d4aabd20}
.pm-flow-counter{font-size:10px;letter-spacing:.1em;color:var(--flow-muted)}.pm-flow-counter [data-flow-count]{color:var(--flow-white)}
.pm-flow-art{min-width:0;position:relative}.pm-flow-visual{position:relative;width:100%;aspect-ratio:800/560;min-height:460px}
.pm-flow-paths{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke-linecap:round;pointer-events:none}
.pm-flow-path{stroke:#bd8faf40;stroke-width:1.1;vector-effect:non-scaling-stroke;transition:stroke .5s,stroke-width .5s}.pm-flow-path.is-active{stroke:#ddb8cd;stroke-width:1.6;filter:drop-shadow(0 0 5px #deb2d0)}
.pm-flow-current{stroke:#f2d7e9;stroke-width:3;stroke-dasharray:1 700;stroke-dashoffset:0;opacity:0;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 6px #f2cbe5);animation:pm-flow-stream 7s linear infinite;animation-play-state:paused}.pm-flow-current.is-active{opacity:1;animation-play-state:running}
.pm-flow-orbit{position:absolute;left:50%;top:50%;width:240px;height:142px;border:1px solid #d4accc36;border-radius:50%;transform:translate(-50%,-50%) rotate(-35deg);pointer-events:none}.pm-flow-orbit-two{transform:translate(-50%,-50%) rotate(40deg);width:236px;height:134px}.pm-flow-orbit-three{transform:translate(-50%,-50%) rotate(90deg);width:208px;height:116px;border-color:#d4accc24}
.pm-flow-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:151px;height:151px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;box-shadow:0 0 32px 8px #bb82ad30,0 0 100px 40px #b57ca01c,inset -14px -16px 30px #271627c9;background:radial-gradient(circle at 33% 26%,#ecd4e1 0,#c29bb9 15%,#885d83 43%,#54334f 72%,#321c30);border:1px solid #b78dad80;isolation:isolate}
.pm-flow-core-light{position:absolute;inset:-13px;border-radius:50%;border:1px solid #dcadcf20;box-shadow:0 0 40px #cea0c226;animation:pm-flow-breathe 7s ease-in-out infinite;z-index:-1}
.pm-flow-core-name{font-size:29px;letter-spacing:-.06em;line-height:1.2;color:#fff9f4;text-shadow:0 1px 8px #2a1828}.pm-flow-core-word{font-size:8px;letter-spacing:.18em;margin-top:10px;color:#fff5f1}
.pm-flow .pm-flow-node{position:absolute;transform:translate(-50%,-18px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;color:#e0ccdc;border:0;background:transparent;font:inherit;font-size:12px;line-height:1.4;white-space:nowrap;cursor:pointer;padding:12px 8px;min-height:66px;min-width:92px;text-align:center;transition:color .3s}
.pm-flow-node-dot{position:relative;width:11px;height:11px;flex-shrink:0;background:#b89cb5;border-radius:50%;box-shadow:0 0 0 6px #b992aa0a,0 0 0 7px #b992aa4a;transition:box-shadow .4s,background .4s}
.pm-flow .pm-flow-node[aria-pressed="true"]{color:#fff9f4}.pm-flow .pm-flow-node[aria-pressed="true"] .pm-flow-node-dot{background:#f2d7e6;box-shadow:0 0 0 6px #e2b9d21a,0 0 0 7px #e2b9d285,0 0 24px 8px #c496b57a}
.pm-flow .pm-flow-node:hover{color:#fff9f4}.pm-flow .pm-flow-node:hover .pm-flow-node-dot{background:#f2d7e6}
.pm-flow-node-0{left:20%;top:17%}.pm-flow-node-1{left:80%;top:17%}.pm-flow-node-2{left:85%;top:50%}.pm-flow-node-3{left:80%;top:83%}.pm-flow-node-4{left:20%;top:83%}.pm-flow-node-5{left:15%;top:50%}
.pm-flow-art-footer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 18px;margin-top:18px;font-size:10px;letter-spacing:.035em;color:#cbb4c6;line-height:1.6}.pm-flow-motion{font:inherit;color:inherit;background:transparent;border:0;border-bottom:1px solid #a98a9e80;cursor:pointer;padding:8px 0;min-height:36px}.pm-flow-motion[hidden]{display:none}
.pm-flow-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:18px 30px;border-top:1px solid #bd98ad30;margin-top:58px;padding-top:25px;font-size:11px;line-height:1.7;color:#d7c5d2}.pm-flow-bottom>a{color:var(--flow-white);white-space:nowrap;display:inline-flex;gap:28px;align-items:center;min-height:40px}
.pm-theme .pm-flow :is(a,button):focus-visible{outline:2px solid #f3d8df!important;outline-offset:6px;border-radius:3px}.pm-flow .pm-flow-node:focus-visible{border-radius:12px}
.pm-flow-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.pm-flow-fallback{font-size:13px;padding-left:18px}.pm-flow-fallback a{text-decoration:underline}
.pm-flow[data-motion="off"] :is(.pm-flow-current,.pm-flow-core-light),.pm-flow.is-paused :is(.pm-flow-current,.pm-flow-core-light),.pm-flow.is-away :is(.pm-flow-current,.pm-flow-core-light){animation-play-state:paused}
@keyframes pm-flow-stream{from{stroke-dashoffset:700}to{stroke-dashoffset:0}}
@keyframes pm-flow-breathe{0%,100%{transform:scale(.97);opacity:.5}50%{transform:scale(1.08);opacity:1}}
@keyframes pm-flow-reveal{from{opacity:.2;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.pm-flow .pm-flow-inner{column-gap:80px}.pm-flow-visual{min-height:500px}}
@media(max-width:1100px){.pm-flow .pm-flow-inner{column-gap:20px;grid-template-columns:minmax(255px,.85fr) minmax(0,1.2fr);padding-top:65px}.pm-flow-visual{min-height:450px}.pm-flow-core{width:125px;height:125px}.pm-flow-core-name{font-size:25px}.pm-flow-orbit{width:195px;height:115px}.pm-flow-orbit-two{width:190px;height:108px}.pm-flow-orbit-three{width:165px;height:100px}.pm-flow .pm-flow-node{font-size:11px}}
@media(max-width:760px){.pm-flow .pm-flow-inner{grid-template-columns:1fr;padding-top:52px;padding-bottom:25px;row-gap:0}.pm-flow .pm-flow-copy{display:contents}.pm-flow-eyebrow{grid-row:1}.pm-flow .pm-flow-copy h2{grid-row:2;font-size:49px;max-width:none;margin:17px 0 19px}.pm-flow .pm-flow-intro{grid-row:3;max-width:420px;font-size:14px}.pm-flow-art{grid-row:4;margin:16px -4px 0}.pm-flow-visual{min-height:355px;max-height:440px;aspect-ratio:1.1}.pm-flow-art-footer{font-size:10px;margin-top:-5px;gap:5px 16px}.pm-flow-panels{grid-row:5;margin-top:32px;min-height:195px;padding-top:26px;border-top:1px solid #bd98ad30}.pm-flow .pm-flow-panel h3{font-size:28px;margin:10px 0 13px}.pm-flow .pm-flow-panel p{max-width:500px;font-size:14px;line-height:1.85}.pm-flow-controls:not([hidden]){grid-row:6;margin-top:4px;justify-content:flex-start}.pm-flow-core{width:125px;height:125px}.pm-flow-core-name{font-size:26px}.pm-flow-core-word{font-size:7px}.pm-flow-orbit{width:185px;height:118px}.pm-flow-orbit-two{width:184px;height:115px}.pm-flow-orbit-three{width:172px;height:105px}.pm-flow .pm-flow-node{font-size:10px;min-width:80px;gap:10px;padding:12px 3px}.pm-flow-node-5{left:14%}.pm-flow-node-2{left:86%}.pm-flow-bottom{grid-row:7;align-items:flex-start;flex-direction:column;margin-top:28px;gap:6px;font-size:11px}.pm-flow-bottom>a{gap:20px}.pm-flow-link{min-height:42px}.pm-flow-motion{min-height:42px}}
@media(max-width:360px){.pm-flow-core{width:108px;height:108px}.pm-flow-core-name{font-size:23px}.pm-flow .pm-flow-node{font-size:9px;min-width:70px}.pm-flow-orbit{width:160px;height:110px}.pm-flow-orbit-two{width:160px;height:105px}.pm-flow-orbit-three{width:150px;height:95px}}
@media(prefers-reduced-motion:reduce){.pm-flow *,.pm-flow *:before,.pm-flow *:after{animation:none!important;transition:none!important}.pm-flow .pm-flow-current{display:none}}

/* Original artwork, centered in a softly lit circular frame. */
.pm-flow-logo{position:absolute;inset:7px;border-radius:50%;overflow:hidden;background:#f4eee4;box-shadow:inset 0 0 0 1px #fff9f440}
.pm-flow .pm-flow-logo img{position:absolute;left:50%;top:50%;width:170%;height:170%;max-width:none;transform:translate(-50%,-50%);object-fit:contain}
