.ecosystem-page{color:var(--petrol);background:#fff}.ecosystem-page .eco-page-intro{padding-top:34px;padding-bottom:13px}.ecosystem-page .eco-page-eyebrow{letter-spacing:1.3px;color:var(--petrol);align-items:center;gap:11px;margin:0 0 22px;font-size:10px;font-weight:650;line-height:1.6;display:flex}.ecosystem-page .eco-page-eyebrow:before{content:"";background:var(--mint);border-radius:3px;flex:none;width:4px;height:17px}.ecosystem-page .eco-page-intro h2{letter-spacing:-1.9px;max-width:940px;color:var(--petrol);margin:0;font-size:clamp(37px,3.6vw,51px);font-weight:550;line-height:1.09}.ecosystem-page .eco-page-intro h2>span{color:var(--teal)}.ecosystem-page .eco-page-intro>p:last-child{max-width:860px;color:var(--text);margin:21px 0 0;font-size:14px;line-height:1.85}.ecosystem-page .eco-page-diagram{padding-top:8px;padding-bottom:29px}.ecosystem-page .eco-map{isolation:isolate;width:100%;min-width:0;max-width:1240px;height:420px;margin:0 auto;position:relative}.ecosystem-page .eco-map-decoration{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:clip}.ecosystem-page .eco-map-decoration img{object-fit:contain;opacity:.035;width:min(500px,50%);height:96%;position:absolute;top:3%;right:6%}.ecosystem-page .eco-map-lines{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ecosystem-page .eco-line{fill:none;stroke:var(--mint);stroke-width:1.1px;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.8;transition:stroke .25s,opacity .25s}.ecosystem-page .eco-line-integration{stroke-dasharray:4 5}.ecosystem-page .eco-line-extension{stroke:var(--teal);opacity:.6}.ecosystem-page .eco-map-item{z-index:3;width:166px;min-width:0;position:absolute}.ecosystem-page .eco-map-control{border:1px solid var(--mint);width:100%;min-width:0;height:110px;color:var(--petrol);text-align:center;cursor:pointer;background:#ffffffed;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:12px 14px;transition:border-color .25s,background .25s,box-shadow .25s;display:flex;position:relative;box-shadow:0 3px 14px #08475605}.ecosystem-page .eco-map-control>img{object-fit:contain;width:110px;max-width:100%;height:47px;display:block}.ecosystem-page .eco-map-control>span{color:var(--muted);font-size:10px;line-height:1.5}.ecosystem-page .eco-product-arrow{color:var(--teal);position:absolute;bottom:8px;right:8px}.ecosystem-page .eco-info-button{z-index:2;width:30px;height:30px;color:var(--teal);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:3px;right:3px}.ecosystem-page .eco-map-ecf{top:70px;left:14%}.ecosystem-page .eco-map-docs{top:20px;left:34%}.ecosystem-page .eco-map-bridge{width:136px;top:150px;left:49%}.ecosystem-page .eco-map-bridge .eco-map-control{border-color:var(--petrol);background:var(--petrol);color:#fff;gap:5px;height:86px;padding:10px}.ecosystem-page .eco-map-bridge .eco-map-control strong{letter-spacing:-.2px;font-size:13px;font-weight:600;line-height:1.4}.ecosystem-page .eco-map-bridge .eco-map-control>span{color:#ffffffc9;font-size:9px}.ecosystem-page .eco-map-bridge svg{color:var(--mint)}.ecosystem-page .eco-map-cluster{z-index:2;min-width:0;position:absolute}.ecosystem-page .eco-cluster-prl{width:320px;height:130px;top:235px;left:26%}.ecosystem-page .eco-cluster-prl .eco-map-prl{top:7px;left:0}.ecosystem-page .eco-cluster-prl .eco-map-time{top:49px;right:0}.ecosystem-page .eco-cluster-pos{width:360px;height:230px;top:176px;right:7%}.ecosystem-page .eco-cluster-pos .eco-map-pos{top:74px;left:0}.ecosystem-page .eco-cluster-pos .eco-map-restaurant{top:20px;right:0}.ecosystem-page .eco-cluster-pos .eco-map-loyalty{bottom:10px;right:0}.ecosystem-page .eco-map-extension{width:130px}.ecosystem-page .eco-map-extension .eco-map-control{border-color:var(--line);background:var(--off);height:52px;box-shadow:none;border-radius:8px;gap:3px;padding:8px}.ecosystem-page .eco-map-extension strong{letter-spacing:-.15px;font-size:11px;font-weight:600;line-height:1.4}.ecosystem-page .eco-map-extension .eco-map-control>span{font-size:8px;line-height:1.4}.ecosystem-page .eco-map-info{z-index:20;border:1px solid var(--mint);width:270px;max-width:calc(100vw - 40px);color:var(--text);opacity:0;visibility:hidden;pointer-events:none;background:#fff;border-radius:9px;padding:12px 14px;font-size:11px;line-height:1.8;transition:opacity .2s,transform .2s,visibility .2s;display:block;position:absolute;top:calc(100% + 9px);left:0;transform:translateY(4px);box-shadow:0 6px 17px #08475612}.ecosystem-page .eco-map-item[data-active=true]{z-index:15}.ecosystem-page .eco-map-cluster:has(.eco-map-item[data-active=true]){z-index:15}.ecosystem-page .eco-map-item[data-active=true]>.eco-map-control{border-color:var(--teal);background:var(--off);box-shadow:0 5px 17px #0847560e}.ecosystem-page .eco-map-bridge[data-active=true]>.eco-map-control{border-color:var(--mint);background:var(--petrol)}.ecosystem-page .eco-map-item[data-active=true]>.eco-map-info{opacity:1;visibility:visible;transform:none}.ecosystem-page .eco-map-prl .eco-map-info,.ecosystem-page .eco-map-time .eco-map-info,.ecosystem-page .eco-map-pos .eco-map-info,.ecosystem-page .eco-map-loyalty .eco-map-info{top:auto;bottom:calc(100% + 9px)}.ecosystem-page .eco-map-pos .eco-map-info,.ecosystem-page .eco-map-restaurant .eco-map-info,.ecosystem-page .eco-map-loyalty .eco-map-info{left:auto;right:0}.ecosystem-page .eco-map-bridge .eco-map-info{left:50%;transform:translate(-50%,4px)}.ecosystem-page .eco-map-bridge[data-active=true]>.eco-map-info{transform:translate(-50%)}.ecosystem-page .eco-map[data-active=bridge] .eco-line-integration,.ecosystem-page .eco-map[data-active=ecf] [data-connection=ecf],.ecosystem-page .eco-map[data-active=prl] [data-connection=prl],.ecosystem-page .eco-map[data-active=pos] [data-connection=pos],.ecosystem-page .eco-map[data-active=time] [data-connection=time],.ecosystem-page .eco-map[data-active=restaurant] [data-connection=restaurant],.ecosystem-page .eco-map[data-active=loyalty] [data-connection=loyalty]{stroke:var(--teal);opacity:1}.ecosystem-page .eco-map-legend{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:9px 25px;margin-top:3px;font-size:10px;line-height:1.6;display:flex}.ecosystem-page .eco-map-legend>span{align-items:center;gap:8px;display:flex}.ecosystem-page .eco-map-legend i{border-top:1px dashed var(--teal);width:20px;display:block}.ecosystem-page .eco-map-legend>span+span i{border-top-style:solid}.ecosystem-page .eco-map-note{max-width:860px;color:var(--muted);text-align:center;margin:12px auto 0;font-size:10px;line-height:1.8}.ecosystem-page .eco-modularity{background:var(--off);padding:29px 0 31px}.ecosystem-page .eco-modularity-message{text-align:center;color:var(--petrol);letter-spacing:-.35px;max-width:920px;margin:0 auto;font-size:20px;font-weight:550;line-height:1.65}.ecosystem-page .eco-modularity-message>span{letter-spacing:0;color:var(--text);font-size:13px;font-weight:400;line-height:1.85}.ecosystem-page .eco-modularity-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:26px;padding-top:22px;display:grid}.ecosystem-page .eco-modularity-grid article{align-items:flex-start;gap:14px;min-width:0;display:flex}.ecosystem-page .eco-modularity-grid article+article{border-left:1px solid var(--line);padding-left:30px}.ecosystem-page .eco-modularity-grid svg{color:var(--teal);flex:none;margin-top:2px}.ecosystem-page .eco-modularity-grid h2{letter-spacing:1.1px;color:var(--petrol);margin:0 0 8px;font-size:10px;font-weight:650;line-height:1.5}.ecosystem-page .eco-modularity-grid p{color:var(--muted);margin:0;font-size:12px;line-height:1.8}.ecosystem-page .eco-page-closing{color:var(--petrol);text-align:center;margin:28px auto 0;font-size:15px;font-weight:500;line-height:1.7}.ecosystem-page .eco-page-closing>span{color:var(--teal)}.ecosystem-page.eco-in-view .eco-map-control{animation:.6s both eco-map-reveal}.ecosystem-page.eco-in-view .eco-map-docs .eco-map-control{animation-delay:60ms}.ecosystem-page.eco-in-view .eco-map-prl .eco-map-control{animation-delay:.12s}.ecosystem-page.eco-in-view .eco-map-pos .eco-map-control{animation-delay:.18s}@keyframes eco-map-reveal{0%{opacity:.4}to{opacity:1}}@media (hover:hover) and (pointer:fine){.ecosystem-page .eco-map-control:hover,.ecosystem-page .eco-info-button:hover{border-color:var(--teal);box-shadow:0 5px 17px #0847560e}.ecosystem-page .eco-map-bridge .eco-map-control:hover{border-color:var(--mint)}}@media (max-width:1200px){.ecosystem-page .eco-map{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"ecf docs""bridge bridge""prl pos";gap:24px;max-width:760px;height:auto;padding-top:13px;display:grid}.ecosystem-page .eco-map-item,.ecosystem-page .eco-map-cluster{width:100%;position:relative;inset:auto}.ecosystem-page .eco-map-ecf{grid-area:ecf}.ecosystem-page .eco-map-docs{grid-area:docs}.ecosystem-page .eco-map-bridge{grid-area:bridge;justify-self:center;width:170px}.ecosystem-page .eco-map-cluster{flex-direction:column;gap:12px;height:auto;display:flex}.ecosystem-page .eco-cluster-prl{grid-area:prl}.ecosystem-page .eco-cluster-pos{grid-area:pos}.ecosystem-page .eco-map-cluster .eco-map-item{width:100%;position:relative;inset:auto}.ecosystem-page .eco-map-cluster .eco-map-extension{width:calc(100% - 20px);margin-left:20px}.ecosystem-page .eco-map-control{height:110px}.ecosystem-page .eco-map-extension .eco-map-control{height:52px}.ecosystem-page .eco-map-decoration img{width:60%;height:85%;top:4%;right:0}.ecosystem-page .eco-map-prl .eco-map-info,.ecosystem-page .eco-map-time .eco-map-info{left:0;right:auto}.ecosystem-page .eco-map-pos .eco-map-info,.ecosystem-page .eco-map-restaurant .eco-map-info,.ecosystem-page .eco-map-loyalty .eco-map-info,.ecosystem-page .eco-map-docs .eco-map-info{left:auto;right:0}.ecosystem-page .eco-map-legend{margin-top:22px}}@media (max-width:700px){.ecosystem-page .eco-page-intro{padding-top:27px;padding-bottom:16px}.ecosystem-page .eco-page-eyebrow{letter-spacing:1.1px;margin-bottom:19px;font-size:9px;line-height:1.7}.ecosystem-page .eco-page-intro h2{letter-spacing:-1.5px;font-size:clamp(35px,9vw,43px);line-height:1.1}.ecosystem-page .eco-page-intro>p:last-child{margin-top:18px;font-size:13px;line-height:1.85}.ecosystem-page .eco-page-diagram{padding-top:0;padding-bottom:25px}.ecosystem-page .eco-map{gap:24px 13px;padding-top:4px}.ecosystem-page .eco-map-control{border-radius:9px;height:110px;padding-inline:10px}.ecosystem-page .eco-map-control>img{width:100px;height:43px}.ecosystem-page .eco-map-control>span{font-size:10px}.ecosystem-page .eco-map-extension .eco-map-control{height:auto;min-height:52px;padding:8px 5px}.ecosystem-page .eco-map-extension strong{font-size:10px}.ecosystem-page .eco-map-extension .eco-map-control>span{font-size:8px}.ecosystem-page .eco-map-bridge{width:155px}.ecosystem-page .eco-map-info{width:min(270px,100vw - 40px);padding:11px 12px;font-size:11px}.ecosystem-page .eco-modularity{padding-block:25px}.ecosystem-page .eco-modularity-message{font-size:18px;line-height:1.65}.ecosystem-page .eco-modularity-message>span{font-size:12px}.ecosystem-page .eco-modularity-grid{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:22px;padding-top:20px}.ecosystem-page .eco-modularity-grid article+article{border-left:0;padding-left:0}.ecosystem-page .eco-modularity-grid h2{margin-bottom:5px}.ecosystem-page .eco-modularity-grid p{font-size:12px}.ecosystem-page .eco-page-closing{max-width:300px;margin-top:24px;font-size:14px}}@media (prefers-reduced-motion:reduce){.ecosystem-page .eco-map-control,.ecosystem-page .eco-map-info,.ecosystem-page .eco-line{transition:none!important;animation:none!important}}.ecosystem-page .eco-transactions{background:var(--off);color:var(--petrol);text-align:center;padding-block:29px 30px}.ecosystem-page .eco-transactions-value{letter-spacing:-2px;font-variant-numeric:tabular-nums;justify-content:center;align-items:baseline;gap:3px;margin:0 auto 7px;font-size:clamp(49px,5.2vw,72px);font-weight:550;line-height:1.08;display:flex}.ecosystem-page .eco-transactions-plus{width:.65em;color:var(--mint);flex:none}.ecosystem-page .eco-transactions-number{text-align:center;width:6ch;display:inline-block}.ecosystem-page .eco-transactions h2{color:var(--petrol);letter-spacing:1.7px;margin:0;font-size:10px;font-weight:650;line-height:1.7}.ecosystem-page .eco-transactions-caption{max-width:650px;color:var(--muted);margin:10px auto 0;font-size:12px;line-height:1.8}@media (max-width:700px){.ecosystem-page .eco-transactions{padding-block:25px}.ecosystem-page .eco-transactions-value{letter-spacing:-1.5px;font-size:clamp(46px,12vw,60px)}.ecosystem-page .eco-transactions-caption{max-width:330px;font-size:11px}}
