/* Payment demonstration: agent request, authorization, payment. */
.purchase-flow{position:relative;isolation:isolate;z-index:2;margin-top:-100px;margin-bottom:-40px;padding:54px 0 52px;background:linear-gradient(#05070b00,#05070bf5 140px,#05070b 280px)}
.flow-heading-motion,.flow-theater{will-change:transform}
.flow-heading{text-align:center;position:relative;z-index:2}
.flow-heading h2{font-size:clamp(38px,4.3vw,61px);font-weight:420;line-height:1.01;letter-spacing:-2px;margin:18px auto 16px}
.flow-heading h2 span{color:#bfc9d6}
.flow-subtitle{max-width:540px;margin:0 auto;color:#929ba8;font-size:13px;font-weight:400;line-height:1.7;letter-spacing:.05px;text-wrap:balance}
.flow-theater{position:relative;max-width:1760px;margin:24px auto 0;padding-inline:32px}
.flow-stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.68fr) minmax(0,1.2fr);gap:64px;min-height:500px;align-items:center;isolation:isolate}
.flow-stage:before{content:none}
.flow-data-field{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.flow-source,.flow-conversion,.flow-destination{position:relative;min-width:0;z-index:1}
.flow-source{height:452px;display:flex;align-items:center;justify-content:center;perspective:1200px;will-change:transform}
.flow-code-plane{position:relative;width:100%;max-width:420px;border:1px solid #e1e7ef05;border-radius:23px;background:rgba(160,190,235,.022);box-shadow:none;transform:rotateY(6deg) rotateZ(-1.2deg);backdrop-filter:blur(17px);-webkit-backdrop-filter:blur(17px);overflow:hidden;transition:background .7s ease,border-color .7s ease}
.flow-code-top{display:flex;align-items:center;gap:8px;padding:6px 20px 0;color:#d2dae4;font-size:15px;letter-spacing:.1px}
.flow-ai-orb{display:block;flex:0 0 96px;width:96px;height:96px;pointer-events:none}
.flow-request{margin:0 29px 6px;color:#cad3df;font-size:21px;font-weight:400;line-height:1.4;letter-spacing:-.4px}
.flow-request span{color:#ecf0f5}
.flow-code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:14px;font-weight:400;line-height:2.05;letter-spacing:0;color:#b6becb;margin:0;padding:21px 29px 23px 52px;white-space:pre;overflow:hidden;background:none;border:0}
.flow-code code{font:inherit;color:inherit;display:block;background:none;padding:0;counter-reset:flow-line}
.flow-code-line{position:relative;display:block;min-height:28px;transition:opacity .8s ease;opacity:.82}
.flow-code-line:before{counter-increment:flow-line;content:counter(flow-line);position:absolute;left:-27px;width:13px;text-align:right;font-size:9px;color:#697381;opacity:.5;letter-spacing:0}
.flow-code-fn{color:#e5e9ef}.flow-code-namespace{color:#8d9daf}.flow-code-key{color:#aab4c2}.flow-code-number{color:#d5dce6}.flow-code-punct{color:#747f8f}.flow-code-string{color:#c4d0e0}
.flow-code-caret{display:inline-block;width:5px;height:14px;background:#ccd5e280;vertical-align:middle;margin-left:3px;animation:flow-caret 1.1s steps(1) infinite;animation-play-state:paused}
.flow-agent-examples{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 29px;padding:14px 0 18px;border-top:1px solid #dbe3ef04}
.flow-agent-examples>span{display:flex;align-items:center;gap:7px;color:#84909f;font-size:9px;white-space:nowrap}
.flow-agent-examples img{display:block;width:18px;height:18px;filter:invert(1);opacity:.68}
.flow-conversion{height:350px;display:flex;align-items:center;justify-content:center;flex-direction:column}
.flow-api-label{position:absolute;top:36px;text-align:center;white-space:nowrap}
.flow-api-label strong{display:block;font-size:23px;font-weight:450;letter-spacing:2.7px;color:#e0e8f4}
.flow-api-label>span{display:block;font-size:11px;line-height:1.5;letter-spacing:.1px;margin-top:7px;color:#9aafcb}
.flow-brand-gateway{position:relative;width:186px;height:130px;margin-top:0;display:grid;place-items:center;color:#e1ebfa}
.flow-core-mark{position:relative;width:88px;height:78px;overflow:visible;filter:drop-shadow(0 0 12px #9dc4ff28);opacity:.9;transition:opacity 1.2s ease,filter 1.4s ease}
.purchase-flow[data-phase="2"] .flow-core-mark,.purchase-flow[data-phase="3"] .flow-core-mark{opacity:1;filter:drop-shadow(0 0 20px #a6ccff48)}
.flow-checks{position:absolute;bottom:21px;left:-25px;right:-25px;display:flex;flex-direction:column;align-items:center;gap:12px}
.flow-limit-check,.flow-permission{display:flex;justify-content:center;align-items:center;gap:6px;font-size:10px;color:#748296;white-space:nowrap;transition:color .9s ease,opacity .9s ease}
.flow-checks svg,.flow-payment-status svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.4;flex:none}
.flow-limit-check svg{opacity:.25;transition:opacity .9s ease}
.purchase-flow[data-phase="2"] .flow-limit-check,.purchase-flow[data-phase="3"] .flow-limit-check,.purchase-flow[data-phase="4"] .flow-limit-check,.purchase-flow[data-phase="5"] .flow-limit-check{color:#b5c4d5}
.purchase-flow[data-phase="2"] .flow-limit-check svg,.purchase-flow[data-phase="3"] .flow-limit-check svg,.purchase-flow[data-phase="4"] .flow-limit-check svg,.purchase-flow[data-phase="5"] .flow-limit-check svg{opacity:1}
.purchase-flow[data-phase="3"] .flow-permission,.purchase-flow[data-phase="4"] .flow-permission,.purchase-flow[data-phase="5"] .flow-permission{color:#d0dce9}
.flow-destination{height:480px;perspective:1200px;will-change:transform}
.flow-payment-objects{position:absolute;inset:0;perspective:1200px}
.flow-pix-object{position:absolute;top:18px;left:2%;width:234px;padding:22px;border:1px solid #e2e9f005;border-radius:24px;background:rgba(160,190,235,.020);box-shadow:none;transform:rotateY(-10deg) rotateZ(-5deg);transition:opacity 1.2s ease,transform 1.5s cubic-bezier(.16,1,.3,1),border-color 1s ease;backdrop-filter:blur(17px);-webkit-backdrop-filter:blur(17px)}
.flow-pix-header{display:flex;align-items:center;gap:9px;color:#cbd3df;font-size:13px}
.flow-pix-header>svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.flow-pix-header>i{width:4px;height:4px;margin-left:auto;border-radius:50%;background:#d4e2f3;box-shadow:0 0 8px #bccfe64d;opacity:.25;transition:opacity 1s}
.flow-qr{position:relative;width:160px;height:160px;margin:21px auto 18px}
.flow-qr:before{content:"";position:absolute;inset:-6px;border-radius:9px;box-shadow:inset 0 0 0 1px #d5deea05;pointer-events:none}
.flow-qr>svg{width:100%;height:100%;fill:#d4dce7;opacity:.9;clip-path:inset(100% 0 0 0);transition:clip-path 1.8s cubic-bezier(.16,1,.3,1)}
.flow-qr>svg.flow-qr-ghost{position:absolute;inset:0;clip-path:inset(0);opacity:.35}
.flow-qr>i{position:absolute;left:1px;right:1px;top:0;height:1px;background:linear-gradient(90deg,transparent,#dde8f477,transparent);box-shadow:0 0 10px #b5c9e333;opacity:0;animation:flow-scan 3s ease-in-out infinite;animation-play-state:paused}
.flow-pix-value{font-size:32px;letter-spacing:-1px;font-weight:430;color:#e2e8ef;text-align:center}
.flow-pix-value>span:first-child{font-size:12px;letter-spacing:0;color:#9ba7b8}
.flow-pix-value>span:last-child{font-size:25px;color:#bdc9da}
.flow-card-object{position:absolute;width:310px;right:0;top:224px;transform:rotateY(-12deg) rotateZ(7deg);transition:opacity 1.2s ease,transform 1.5s cubic-bezier(.16,1,.3,1)}
.flow-card-surface{position:relative;isolation:isolate;aspect-ratio:1.59;overflow:hidden;padding:23px 26px;border:1px solid #e0e8f205;border-radius:20px;background:rgba(160,190,235,.022);box-shadow:none;transition:border-color 1s ease;backdrop-filter:blur(17px);-webkit-backdrop-filter:blur(17px)}
.flow-card-engraving{position:absolute;inset:0;width:100%;height:100%;stroke:#c1cfdf0a;stroke-width:.5;pointer-events:none;z-index:-1}
.flow-bank-card-head{display:flex;justify-content:space-between;align-items:center}
.flow-bank-card-head{min-height:20px}
.flow-bank-card-head .flow-card-logo{display:block;width:58px;height:auto;opacity:.95}
.flow-bank-card-head strong{font-size:17px;font-weight:450;letter-spacing:2px;color:#e1e7ef}
.flow-bank-card-head>span{font-size:7px;letter-spacing:1.6px;color:#b1bdcc}
.flow-chip{width:33px;height:27px;margin:26px 0 14px;color:#c6d1de}
.flow-chip svg{width:100%;height:100%;stroke:currentColor;stroke-width:.55;fill:#ccd6e309}
.flow-card-number{font-family:ui-monospace,monospace;font-size:14px;letter-spacing:3px;color:#b5c2d2;opacity:1;transition:opacity 1s}
.flow-card-number>span{color:#c5d1e0;font-size:13px;letter-spacing:1.5px;margin-left:8px}
.flow-bank-card-foot{display:flex;justify-content:space-between;align-items:center;position:absolute;left:26px;right:26px;bottom:17px;font-size:8px;color:#aab9cc}
.flow-bank-card-foot svg{width:19px;height:19px;stroke:#aabbd1;stroke-width:1.1;stroke-linecap:round}
.purchase-flow[data-method="pix"] .flow-pix-object{z-index:2;opacity:1}
.purchase-flow[data-method="pix"] .flow-card-object{opacity:1;transform:rotateY(-12deg) rotateZ(7deg) translate(4px,4px)}
.purchase-flow[data-method="card"] .flow-pix-object{opacity:1;transform:rotateY(-10deg) rotateZ(-5deg) translate(-3px,-3px)}
.purchase-flow[data-method="card"] .flow-card-object{opacity:1;transform:rotateY(-8deg) rotateZ(4deg) translate(-3px,-4px);z-index:2}
.purchase-flow[data-phase="0"] .flow-code-line:first-child,.purchase-flow:not([data-phase="0"]) .flow-code-line{opacity:1}
.purchase-flow[data-phase="4"] .flow-qr>svg,.purchase-flow[data-phase="5"] .flow-qr>svg{clip-path:inset(0)}
.purchase-flow[data-phase="4"] .flow-card-number,.purchase-flow[data-phase="5"] .flow-card-number{opacity:1}
.purchase-flow[data-phase="4"] .flow-pix-header>i,.purchase-flow[data-phase="5"] .flow-pix-header>i{opacity:1}
.purchase-flow[data-method="pix"][data-phase="4"] .flow-pix-object,.purchase-flow[data-method="pix"][data-phase="5"] .flow-pix-object{border-color:transparent}
.purchase-flow[data-method="card"][data-phase="4"] .flow-card-surface,.purchase-flow[data-method="card"][data-phase="5"] .flow-card-surface{border-color:transparent}
.flow-payment-status{position:absolute;left:0;right:0;bottom:-10px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;color:#acbccf;opacity:0;transform:translateY(7px);transition:opacity 1s ease,transform 1.2s cubic-bezier(.16,1,.3,1)}
.purchase-flow[data-phase="5"] .flow-payment-status{opacity:1;transform:translateY(0)}
.is-playing .flow-code-caret,.is-playing[data-method="pix"][data-phase="4"] .flow-qr>i{animation-play-state:running}
.flow-a11y-note{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@keyframes flow-caret{50%{opacity:0}}@keyframes flow-scan{0%,100%{transform:translateY(0);opacity:0}15%,85%{opacity:.55}95%{transform:translateY(155px);opacity:0}}
@media(max-width:1100px) and (min-width:761px){.flow-theater{padding-inline:32px}.flow-stage{gap:18px;min-height:510px}.flow-source{height:440px}.flow-destination{height:490px}.flow-code-top{padding:7px 13px 0;font-size:13px}.flow-ai-orb{width:80px;height:80px;flex-basis:80px}.flow-request{font-size:18px;margin:0 23px 5px}.flow-code{font-size:12px;padding:18px 19px 21px 44px}.flow-code-line{min-height:25px}.flow-agent-examples{margin:0 23px;gap:7px}.flow-agent-examples>span{font-size:8px;gap:5px}.flow-agent-examples img{width:16px;height:16px}.flow-conversion{height:330px}.flow-api-label strong{font-size:21px}.flow-brand-gateway{width:150px;height:112px}.flow-core-mark{width:78px;height:68px}.flow-checks{bottom:18px}.flow-limit-check,.flow-permission{font-size:9px}.flow-pix-object{left:0;width:190px;padding:18px;border-radius:21px}.flow-qr{width:132px;height:132px;margin:18px auto 16px}.flow-pix-value{font-size:28px}.flow-pix-value>span:last-child{font-size:22px}.flow-card-object{width:252px;top:282px}.flow-card-surface{padding:19px 21px;border-radius:17px}.flow-bank-card-head strong{font-size:14px}.flow-bank-card-head>span{font-size:6px}.flow-chip{width:27px;height:22px;margin:18px 0 11px}.flow-card-number{font-size:12px}.flow-card-number>span{font-size:11px}.flow-bank-card-foot{left:21px;right:21px;bottom:14px;font-size:7px}.flow-payment-status{bottom:-18px}}
@media(max-width:880px) and (min-width:761px){.flow-stage{grid-template-columns:1.08fr .59fr 1.2fr;gap:14px}.flow-theater{padding-inline:24px}.flow-pix-object{width:178px;padding:16px}.flow-qr{width:124px;height:124px}.flow-card-object{width:232px;top:282px}.flow-code{font-size:11px;padding-left:40px}.flow-agent-examples{gap:6px;margin-inline:18px}.flow-agent-examples>span{font-size:7px}.flow-agent-examples img{width:15px;height:15px}.flow-request{font-size:17px;margin-inline:20px}.flow-checks{left:-32px;right:-32px}}
@media(max-width:760px){.purchase-flow{margin-top:-46px;margin-bottom:-20px;padding:38px 0 36px;background:linear-gradient(#05070b00,#05070bf5 95px,#05070b 230px)}.flow-heading{padding-inline:22px}.flow-heading h2{font-size:40px;letter-spacing:-1.7px;margin:18px auto 14px}.flow-subtitle{max-width:330px;font-size:12px;line-height:1.65}.flow-theater{padding-inline:24px;margin-top:22px;max-width:450px}.flow-stage{grid-template-columns:1fr;gap:0;min-height:0}.flow-source{height:406px;max-width:350px;width:100%;margin:auto}.flow-code-plane{max-width:344px;border-radius:22px;transform:rotateY(4deg) rotateZ(-1deg)}.flow-code-top{padding:4px 16px 0;font-size:14px}.flow-ai-orb{width:88px;height:88px;flex-basis:88px}.flow-request{margin:0 26px 6px;font-size:20px}.flow-code{font-size:13px;line-height:2;padding:20px 25px 20px 48px}.flow-code-line{min-height:26px}.flow-code-line:before{left:-26px;font-size:8px}.flow-agent-examples{margin:0 26px;padding:13px 0 16px;gap:9px}.flow-agent-examples>span{font-size:8px;gap:6px}.flow-agent-examples img{width:17px;height:17px}.flow-conversion{height:240px;margin:14px 0 16px}.flow-api-label{top:7px}.flow-api-label strong{font-size:21px;letter-spacing:3px}.flow-api-label>span{font-size:10px;margin-top:8px}.flow-brand-gateway{width:150px;height:100px;margin-top:1px}.flow-core-mark{width:72px;height:64px}.flow-checks{bottom:0;left:0;right:0;gap:10px}.flow-limit-check,.flow-permission{font-size:9px}.flow-destination{height:510px;width:100%;max-width:365px;margin:auto}.flow-pix-object{width:204px;left:0;top:12px;padding:19px;border-radius:22px}.flow-pix-header{font-size:12px}.flow-qr{width:142px;height:142px;margin:19px auto 17px}.flow-pix-value{font-size:29px}.flow-pix-value>span:last-child{font-size:23px}.flow-card-object{width:268px;right:0;top:294px}.flow-card-surface{padding:20px 23px;border-radius:18px}.flow-bank-card-head strong{font-size:15px}.flow-bank-card-head>span{font-size:6px}.flow-chip{width:28px;height:23px;margin:20px 0 12px}.flow-card-number{font-size:12px}.flow-card-number>span{font-size:11px}.flow-bank-card-foot{left:23px;right:23px;bottom:14px;font-size:7px}.flow-payment-status{bottom:-6px;font-size:9px}}
@media(max-width:360px){.flow-theater{padding-inline:20px}.flow-card-object{width:248px}.flow-pix-object{width:194px}.flow-qr{width:136px;height:136px}.flow-request{font-size:19px}.flow-agent-examples{gap:6px;margin-inline:22px}}
@media(prefers-reduced-motion:reduce){.purchase-flow{margin-bottom:0}.purchase-flow *{animation:none!important;transition:none!important}.flow-heading-motion,.flow-theater,.flow-source,.flow-destination{will-change:auto}.flow-code-caret,.flow-qr>i{display:none}.flow-code-line{opacity:1}}
@media(hover:hover){.flow-code-plane:hover,.flow-pix-object:hover,.flow-card-surface:hover{border-color:#e1eaf20a}}



/* Six examples remain readable without compressing the names. */
.flow-agent-examples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px 12px;padding-top:13px;padding-bottom:17px}
.flow-agent-examples>span{justify-content:flex-start;min-width:0;gap:7px}
.flow-agent-examples img{flex:0 0 18px;opacity:.75}
@media(min-width:761px) and (max-width:1100px){.flow-agent-examples{gap:10px 6px}.flow-agent-examples>span{font-size:8px;gap:5px}.flow-agent-examples img{width:16px;height:16px;flex-basis:16px}}
@media(min-width:761px) and (max-width:880px){.flow-agent-examples>span{font-size:7px}.flow-agent-examples img{width:15px;height:15px;flex-basis:15px}}
@media(max-width:760px){.flow-agent-examples{gap:10px 9px;padding-top:12px;padding-bottom:15px}.flow-agent-examples>span{font-size:8px;gap:6px}.flow-agent-examples img{width:17px;height:17px;flex-basis:17px}}

/* Stable two-line rotating requests. Original particle orb styling above. */
.flow-request{min-height:2.8em;will-change:opacity,transform}
.flow-pix-value>b{font:inherit;letter-spacing:inherit}
@media(prefers-reduced-motion:reduce){.flow-request{will-change:auto}}
