.tp-orbit-scene{--orbit-radius:clamp(16rem,29vw,22rem);position:relative;isolation:isolate;width:min(100%,70rem);height:calc(var(--orbit-radius) * 2 + 11rem);margin:3rem auto 0;overflow:visible;border-radius:2rem;background:radial-gradient(circle at 50% 48%,rgba(68,207,137,.17),rgba(237,249,242,.55) 42%,rgba(255,255,255,0) 76%)}
.tp-orbit-ring{position:absolute;left:50%;top:50%;border:1.5px solid rgba(48,184,115,.28);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.tp-orbit-ring-inner{width:calc(var(--orbit-radius) * .8);height:calc(var(--orbit-radius) * .8)}.tp-orbit-ring-middle{width:calc(var(--orbit-radius) * 1.38);height:calc(var(--orbit-radius) * 1.38)}.tp-orbit-ring-extra{width:calc(var(--orbit-radius) * 1.96);height:calc(var(--orbit-radius) * 1.96)}.tp-orbit-ring-outer{width:calc(var(--orbit-radius) * 2.54);height:calc(var(--orbit-radius) * 2.54)}
.tp-orbit-phone{position:absolute;z-index:2;left:50%;top:51%;width:13.8rem;height:29.5rem;padding:.6rem;overflow:hidden;border:.55rem solid #101a18;border-radius:2.5rem;background:#e4f2e9;box-shadow:0 2rem 3rem rgba(15,65,44,.2);transform:translate(-50%,-50%) rotate(-5deg)}
.tp-orbit-phone-camera{position:absolute;z-index:5;top:.45rem;left:50%;width:4.8rem;height:1.1rem;border-radius:2rem;background:#101a18;transform:translateX(-50%)}
.tp-orbit-map{position:absolute;inset:0;overflow:hidden;background:linear-gradient(130deg,#e4f2e9 26%,#cfe9da 26% 43%,#e4f2e9 43% 68%,#d9ecdf 68%)}
.tp-orbit-map:before{content:"";position:absolute;inset:-15%;z-index:0;background:repeating-linear-gradient(90deg,transparent 0 3.25rem,rgba(255,255,255,.78) 3.25rem 3.7rem),repeating-linear-gradient(0deg,transparent 0 4.1rem,rgba(255,255,255,.78) 4.1rem 4.55rem);animation:tp-map-pan 20s ease-in-out infinite alternate;will-change:translate}
.tp-orbit-road{position:absolute;z-index:1;background:#fff;animation:tp-map-road-pan 20s ease-in-out infinite alternate;will-change:translate}.tp-orbit-road-a{width:110%;height:.75rem;left:-5%;top:29%;transform:rotate(-3deg)}.tp-orbit-road-b{width:110%;height:.85rem;left:-5%;top:59%;transform:rotate(5deg)}.tp-orbit-road-c{width:.8rem;height:100%;left:29%;top:0;transform:rotate(-8deg)}.tp-orbit-road-d{width:.8rem;height:100%;left:74%;top:0;transform:rotate(7deg)}
@keyframes tp-map-pan{from{translate:-8% -6%}to{translate:8% 6%}}
@keyframes tp-map-road-pan{from{translate:-10px -7px}to{translate:10px 7px}}
.tp-orbit-route{position:absolute;z-index:2;inset:0;width:100%;height:100%;overflow:visible;fill:none;pointer-events:none}.tp-orbit-route path{stroke:#23ae6a;stroke-width:5;stroke-linecap:round;stroke-dasharray:1 12;filter:drop-shadow(0 1px 1px rgba(25,123,75,.2));animation:tp-route-march 2.2s linear infinite}
.tp-orbit-map>span.tp-orbit-route{display:none!important}
@keyframes tp-route-march{to{stroke-dashoffset:-26}}
.tp-orbit-pin{position:absolute;z-index:3;display:grid;place-items:center;width:2.1rem;height:2.1rem;border:3px solid white;border-radius:50%;color:white;background:#24b372;box-shadow:0 .3rem .75rem rgba(19,119,76,.25);animation:tp-map-pin-bob 3.2s ease-in-out infinite;will-change:translate,scale}.tp-orbit-pin:after{content:"";position:absolute;inset:-3px;border:2px solid #27b875;border-radius:50%;animation:tp-map-pin-ripple 3.2s ease-out infinite;pointer-events:none}.tp-orbit-pin-a{top:28%;left:57%}.tp-orbit-pin-b{top:48%;left:26%;animation-delay:-1.05s}.tp-orbit-pin-c{top:60%;left:66%;animation-delay:-2.1s}.tp-orbit-pin-b:after{animation-delay:-1.05s}.tp-orbit-pin-c:after{animation-delay:-2.1s}
@keyframes tp-map-pin-bob{0%,100%{translate:0 0;scale:1}50%{translate:0 -4px;scale:1.08}}
@keyframes tp-map-pin-ripple{0%{scale:1;opacity:.75}75%,100%{scale:2.3;opacity:0}}
.tp-orbit-phone-panel{position:absolute;z-index:4;left:.25rem;right:.25rem;bottom:.2rem;display:flex;flex-direction:column;gap:.1rem;padding:.85rem;border-radius:1.1rem;background:#fff;box-shadow:0 -.3rem 1rem rgba(14,78,48,.07);color:#1d2a32;transform:rotate(0)}.tp-orbit-phone-panel strong{font-size:.95rem}.tp-orbit-phone-panel>span{font-size:.67rem;color:#64737a}.tp-orbit-phone-panel .tp-orbit-phone-action{display:block;margin-top:.4rem;padding:.34rem;border-radius:1rem;text-align:center;background:#1d2a32;color:#fff;font-size:.66rem}
.tp-orbit-cards{position:absolute;inset:0;z-index:3;pointer-events:none}.tp-orbit-card-position{position:absolute;left:50%;top:50%;width:0;height:0;pointer-events:none;animation:tp-orbit-spin 72s linear infinite;animation-delay:var(--orbit-phase);will-change:transform}.tp-orbit-card-one{--orbit-phase:-10s}.tp-orbit-card-two{--orbit-phase:-18s}.tp-orbit-card-three{--orbit-phase:-26s}.tp-orbit-card-four{--orbit-phase:-46s}.tp-orbit-card-five{--orbit-phase:-54s}.tp-orbit-card-six{--orbit-phase:-62s}
@keyframes tp-orbit-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes tp-orbit-counterspin{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(-360deg)}}
.tp-orbit-card{position:absolute;left:0;top:calc(-1 * var(--orbit-radius));display:flex;align-items:center;gap:.7rem;width:17.5rem;min-height:5.25rem;padding:.85rem 1rem;border:1px solid #d8e9e0;border-radius:1.2rem;background:rgba(255,255,255,.96);box-shadow:0 .7rem 0 rgba(38,102,72,.035),0 1.2rem 1.7rem rgba(31,81,56,.1);pointer-events:auto;transform:translate(-50%,-50%);animation:tp-orbit-counterspin 72s linear infinite;animation-delay:var(--orbit-phase);will-change:transform;cursor:pointer;appearance:none;font:inherit;text-align:left}.tp-orbit-card:focus-visible{outline:3px solid #1dad68;outline-offset:3px}
.tp-orbit-card-icon{flex:none;display:grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:50%;color:#1dad68;background:#e0f5e9}.tp-orbit-card-copy{display:flex;flex-direction:column;min-width:0;gap:.15rem;color:#1e2d36}.tp-orbit-card-copy strong{font-size:.95rem;line-height:1.15;font-weight:700}.tp-orbit-card-copy>span{font-size:.74rem;line-height:1.3;color:#63747b}.tp-orbit-card-six .tp-orbit-card{background:#ffb21f;border-color:#ffb21f}.tp-orbit-card-six .tp-orbit-card-icon{background:#ffe0a0;color:#273138}.tp-orbit-card-six .tp-orbit-card-copy>span{color:#4d4534}
.tp-orbit-dialog{width:min(26rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);margin:auto;padding:2rem;border:1px solid #d8e9e0;border-radius:1.5rem;background:#fff;color:#1e2d36;box-shadow:0 1.5rem 4rem rgba(16,55,37,.2)}.tp-orbit-dialog::backdrop{background:rgba(12,39,29,.48);backdrop-filter:blur(4px)}.tp-orbit-dialog-icon{display:grid;place-items:center;width:3.5rem;height:3.5rem;margin-bottom:1.2rem;border-radius:50%;color:#1dad68;background:#e0f5e9}.tp-orbit-dialog h3{margin:0 2rem .7rem 0;font-size:1.55rem;line-height:1.2;font-weight:700}.tp-orbit-dialog p{margin:0;color:#53656d;font-size:1rem;line-height:1.6}.tp-orbit-dialog-close{position:absolute;top:1rem;right:1rem;display:grid;place-items:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid #d8e9e0;border-radius:50%;background:#fff;color:#1e2d36;cursor:pointer}.tp-orbit-dialog-close:focus-visible{outline:3px solid #1dad68;outline-offset:2px}
@media(max-width:980px){.tp-orbit-scene{width:calc(100% + 3rem);max-width:none;height:auto;min-height:0;margin-inline:-1.5rem;padding:2.25rem .8rem 2.5rem;overflow:hidden}.tp-orbit-ring{top:15rem}.tp-orbit-ring-inner{width:min(51%,11rem);height:auto;aspect-ratio:1}.tp-orbit-ring-middle{width:min(76%,17rem);height:auto;aspect-ratio:1}.tp-orbit-ring-extra{width:min(87%,19.5rem);height:auto;aspect-ratio:1}.tp-orbit-ring-outer{width:min(calc(100% - 1rem),22rem);height:auto;aspect-ratio:1}.tp-orbit-phone{position:relative;left:auto;top:auto;width:11.25rem;height:25.5rem;margin:0 auto 2.5rem;transform:rotate(-4deg)}.tp-orbit-cards{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.tp-orbit-card-position{position:relative;left:auto;right:auto;top:auto;width:auto;height:auto;animation:none;will-change:auto}.tp-orbit-card{position:relative;left:auto;top:auto;width:100%;min-height:5rem;padding:.65rem;gap:.45rem;transform:none;animation:none;will-change:auto}.tp-orbit-card-icon{width:2.1rem;height:2.1rem}.tp-orbit-card-icon svg{width:1.15rem;height:1.15rem}.tp-orbit-card-copy strong{font-size:.75rem}.tp-orbit-card-copy>span{font-size:.65rem}}
@media(max-width:980px){.tp-orbit-phone{border-width:.5rem}}
@media(max-width:600px){#use-cases{overflow-x:clip}.tp-orbit-scene{overflow:visible}.tp-orbit-ring-inner{width:14rem}.tp-orbit-ring-middle{width:21rem}.tp-orbit-ring-extra{width:27rem}.tp-orbit-ring-outer{width:34rem}}
@media(max-width:320px){.tp-orbit-cards{grid-template-columns:1fr}.tp-orbit-card{min-height:4.5rem}.tp-orbit-phone{margin-bottom:1.25rem}}
@media(prefers-reduced-motion:reduce){.tp-orbit-card-position,.tp-orbit-card{animation-play-state:paused;will-change:auto}.tp-orbit-map:before,.tp-orbit-road,.tp-orbit-route path,.tp-orbit-pin,.tp-orbit-pin:after{animation:none;will-change:auto}}
