/* Approved merchant / So99 compositions. All headings and controls remain live HTML. */
.merchant-chapter.merchant-approved{padding:0;background:radial-gradient(ellipse at 83% 14%,#154b8969,transparent 60%),#04172f}
.merchant-stage{position:relative;width:100%;max-width:1600px;aspect-ratio:2.5;min-height:460px;margin:0 auto;container-type:inline-size}
.merchant-approved .chapter-copy{position:absolute;left:9%;top:24%;width:39%}
.merchant-eyebrow{display:flex;align-items:center;gap:17px;margin-bottom:25px;white-space:nowrap}
.merchant-eyebrow .eyebrow{margin:0;font-size:clamp(8px,.83vw,13px);letter-spacing:2.4px}
.merchant-eyebrow .status-badge{font-size:clamp(10px,.9vw,14px);padding:7px 15px;line-height:1.5}
.merchant-approved h2{font-size:clamp(36px,4.05vw,65px);line-height:1.3;letter-spacing:-1.6px;margin-bottom:30px;white-space:nowrap}
.merchant-approved .lead{font-size:clamp(13px,1.37vw,22px);line-height:1.9;margin:0}
.merchant-panel{position:absolute;left:45.2%;top:8%;width:50%;margin:0;isolation:isolate}
.merchant-panel>img{display:block;width:100%;height:auto}
.merchant-panel:after{content:"";position:absolute;left:5%;right:6%;bottom:2%;height:3%;background:#62a7ff42;filter:blur(17px);z-index:-1}
.merchant-panel-label{position:absolute;color:#f1f8ff;line-height:1.2;font-weight:550;white-space:nowrap;text-shadow:0 1px 8px #04152a80}
.merchant-panel-title{left:18.2%;top:25.3%;font-size:clamp(13px,1.43vw,23px);transform:rotate(-4deg);transform-origin:left center}
.merchant-panel-brand{right:16.5%;top:19%;font-size:clamp(7px,.72vw,11px);letter-spacing:3px;color:#a1c7f4;transform:rotate(-4deg)}
.merchant-panel-pay{left:25.7%;top:64.5%;transform:translateX(-50%) rotate(1deg);font-size:clamp(12px,1.4vw,22px)}
.merchant-panel-api{left:66.3%;top:64.5%;transform:translateX(-50%) rotate(1deg);font-size:clamp(12px,1.4vw,22px)}
.ecosystem-chapter.so99-approved{padding:0;background:#f5faff;overflow:hidden}
.so99-scene-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}
.so99-stage{position:relative;width:100%;max-width:1600px;aspect-ratio:1482/568;min-height:450px;margin:0 auto}
.so99-approved .chapter-copy{position:absolute;left:9.8%;top:17.5%;width:30%;z-index:2}
.so99-approved .eyebrow{font-size:clamp(8px,.82vw,13px);letter-spacing:2.6px;margin-bottom:28px;color:#345984}
.so99-approved h2{font-size:clamp(30px,3.9vw,62px);letter-spacing:-1.7px;line-height:1.32;margin-bottom:28px;white-space:nowrap;color:#051b3b}
.so99-approved .lead{font-size:clamp(12px,1.4vw,22px);line-height:1.8;color:#405c85;margin-bottom:0}
.so99-character{position:absolute;left:38.6%;top:10.8%;width:25%;margin:0;z-index:2}
.so99-character img{display:block;width:100%;height:auto;position:relative;z-index:1;transform-origin:47% 95.5%;animation:so99-grounded-breath 6s ease-in-out infinite}
.so99-character:before{content:"";position:absolute;left:26%;right:26%;bottom:3.8%;height:2.5%;border-radius:50%;background:#25374750;filter:blur(4px);transform:skewX(-35deg);transform-origin:center}
.so99-invitation{position:absolute;left:63.5%;top:34%;width:28%;z-index:3;text-align:center}
.so99-approved .so99-cta.glass{display:flex;width:100%;gap:clamp(10px,1vw,16px);padding:clamp(10px,1.1vw,17px) clamp(13px,1.5vw,24px);border-radius:999px;border:1px solid #d4f4ff;color:white;background:radial-gradient(ellipse at 15% 0%,#93d6ffbf,transparent 52%),linear-gradient(120deg,#197bfff5,#0055fff7 55%,#0044eef5);box-shadow:inset 0 2px 3px #fff9,inset 0 -3px 8px #61c4ff8c,0 0 0 2px #73c3ff4f,0 8px 24px #0672ed30;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:clamp(13px,1.46vw,23px);font-weight:500;line-height:1.35;white-space:nowrap}
.so99-cta img{display:block;flex-shrink:0;width:clamp(30px,3.65vw,58px);height:clamp(30px,3.65vw,58px);border-radius:50%;background:#fff;object-fit:contain;border:2px solid #fff}
.so99-cta .so99-cta-text{border-left:1px solid #c0e1ff94;padding-left:clamp(10px,1.3vw,21px)}
.so99-approved .so99-cta.glass svg{width:clamp(17px,1.7vw,27px);height:clamp(17px,1.7vw,27px);margin-left:auto}
.so99-approved .so99-cta.glass:hover{border-color:#fff;box-shadow:inset 0 2px 3px #fffb,inset 0 -3px 8px #72d5ff,0 0 0 2px #94d4ff8a,0 10px 28px #0672ed50;transform:translateY(-2px)}
.so99-invitation small{display:block;font-size:clamp(10px,1.06vw,17px);line-height:1.6;color:#31599b;margin-top:11px;letter-spacing:.1px}
.so99-cta:after{content:"";position:absolute;inset:-20% -60%;background:linear-gradient(110deg,transparent 43%,#ffffff29 50%,transparent 57%);transform:translateX(-100%);pointer-events:none;animation:so99-invitation-light 9s ease-in-out infinite}
@keyframes so99-grounded-breath{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.005)}}
@keyframes so99-invitation-light{0%,72%{transform:translateX(-100%);opacity:0}76%{opacity:1}95%,100%{transform:translateX(100%);opacity:0}}
@media(prefers-reduced-motion:reduce){.so99-character img,.so99-cta:after{animation:none!important}}
@media(min-width:1600px){.merchant-eyebrow .eyebrow{font-size:13px}.merchant-approved h2{font-size:65px}.merchant-approved .lead{font-size:22px}.so99-approved h2{font-size:62px}}
@media(max-width:1100px) and (min-width:761px){.merchant-stage{min-height:430px}.merchant-approved .chapter-copy{left:6%;width:42%;top:22%}.merchant-panel{left:46%;top:15%;width:51%}.merchant-approved h2{font-size:4.05vw}.merchant-eyebrow{gap:9px}.merchant-eyebrow .eyebrow{letter-spacing:1.2px}.merchant-eyebrow .status-badge{padding:5px 10px}.so99-stage{min-height:410px}.so99-approved .chapter-copy{left:6%;top:20%;width:34%}.so99-approved h2{font-size:3.8vw;letter-spacing:-1px}.so99-character{top:16%}.so99-invitation{top:36%;left:64%;width:31%}.so99-approved .so99-cta.glass{font-size:13px;padding:10px 12px;gap:8px}.so99-cta .so99-cta-text{padding-left:8px}.so99-cta img{width:32px;height:32px}}
/* Narrow screens keep readable text and a grounded figure with the CTA beside its hand. */
@media(max-width:760px){.merchant-stage{aspect-ratio:auto;min-height:0;padding:59px 24px 36px}.merchant-approved .chapter-copy{position:relative;inset:auto;width:100%;max-width:550px;margin:auto}.merchant-eyebrow{gap:12px;margin-bottom:23px}.merchant-eyebrow .eyebrow{font-size:8px;letter-spacing:1.7px}.merchant-eyebrow .status-badge{font-size:10px;padding:5px 11px}.merchant-approved h2{font-size:clamp(30px,5.3vw,42px);letter-spacing:-1px;margin-bottom:23px}.merchant-approved .lead{font-size:13px}.merchant-panel{position:relative;inset:auto;width:100%;max-width:570px;margin:30px auto 0}.merchant-panel-title{font-size:clamp(12px,3.1vw,19px)}.merchant-panel-brand{font-size:clamp(6px,1.5vw,9px);letter-spacing:2px}.merchant-panel-pay,.merchant-panel-api{font-size:clamp(12px,3vw,18px)}.so99-stage{aspect-ratio:auto;min-height:0;padding:53px 24px 0;height:660px;max-width:650px}.so99-approved .chapter-copy{position:relative;inset:auto;width:100%;max-width:550px;margin:auto}.so99-approved .eyebrow{font-size:9px;letter-spacing:2.3px;margin-bottom:18px}.so99-approved h2{font-size:clamp(30px,5.3vw,42px);letter-spacing:-1px;margin-bottom:18px}.so99-approved .lead{font-size:13px;line-height:1.8}.so99-scene-background{object-position:65% center}.so99-character{left:0;top:310px;width:55%;max-width:320px}.so99-invitation{left:53%;top:385px;width:43%}.so99-approved .so99-cta.glass{padding:11px 10px;gap:6px;font-size:12px;white-space:normal;border-radius:24px}.so99-cta img{width:30px;height:30px}.so99-cta .so99-cta-text{padding-left:7px;line-height:1.4;text-align:left;flex:1}.so99-approved .so99-cta.glass svg{width:15px;height:15px;flex-shrink:0}.so99-invitation small{font-size:10px;margin-top:9px}}
@media(max-width:420px){.so99-stage{height:580px}.so99-character{top:310px;left:-3%;width:58%}.so99-invitation{top:377px;left:53%;width:43%}.so99-approved .so99-cta.glass{padding:10px 8px;gap:5px;font-size:11px}.so99-cta img{width:27px;height:27px}.so99-cta .so99-cta-text{padding-left:5px}.so99-approved .so99-cta.glass svg{width:13px;height:13px}}

.motion-paused .so99-cta:after{animation-play-state:paused!important}
