/*
 * OriginSpan demo gallery and permanent demo launcher
 */
.demos-main{overflow:hidden}
.demo-hero{position:relative;padding:clamp(92px,11vw,148px) 0 clamp(72px,8vw,112px)}
.demo-hero::before{position:absolute;top:-34rem;right:-20rem;width:66rem;height:66rem;pointer-events:none;content:"";background:radial-gradient(circle at 50% 50%,rgba(17,214,191,.22),transparent 32%),radial-gradient(circle at 44% 55%,rgba(8,120,249,.32),transparent 58%);filter:blur(2px)}
.demo-hero .container{position:relative;z-index:1}.demo-hero h1{max-width:930px;margin:20px 0 28px;font-size:clamp(3.5rem,7.5vw,7.1rem);line-height:.94;letter-spacing:-.068em}
.demo-hero-copy{max-width:770px;margin:0;color:var(--color-muted);font-size:clamp(1.08rem,1.9vw,1.35rem);line-height:1.75}
.demo-signal-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(52px,7vw,86px);overflow:hidden;border:1px solid var(--color-border);background:rgba(4,18,40,.7);border-radius:var(--radius-md);box-shadow:var(--shadow-card);backdrop-filter:blur(16px)}
.demo-signal{min-height:132px;display:flex;flex-direction:column;justify-content:center;padding:24px 28px}.demo-signal+.demo-signal{border-left:1px solid var(--color-border)}
.demo-signal strong{color:var(--color-text);font-size:clamp(1.4rem,2.5vw,2.05rem);line-height:1.1;letter-spacing:-.035em}.demo-signal span{margin-top:8px;color:var(--color-muted);font-size:.83rem;font-weight:720;letter-spacing:.06em;text-transform:uppercase}
.demo-feature-section{padding:clamp(82px,10vw,132px) 0}.demo-section-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(38px,8vw,112px);align-items:end;margin-bottom:44px}
.demo-section-heading h2,.demo-library-intro h2,.demo-contact-band h2{margin:12px 0 0;font-size:clamp(2.45rem,5vw,4.8rem);line-height:1;letter-spacing:-.055em}.demo-section-heading>p,.demo-library-intro>p:last-child{margin:0;color:var(--color-muted);font-size:1.06rem}
.featured-demo-card{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);overflow:hidden;border:1px solid rgba(114,185,255,.26);background:linear-gradient(135deg,rgba(8,120,249,.08),transparent 42%),rgba(4,18,40,.9);border-radius:34px;box-shadow:0 42px 110px rgba(0,0,0,.38)}
.demo-stage{position:relative;min-height:620px;overflow:hidden;border-right:1px solid var(--color-border);background:radial-gradient(circle at 42% 44%,rgba(17,214,191,.2),transparent 27%),linear-gradient(155deg,#071e37,#03101f 65%,#020817)}
.demo-stage::before{position:absolute;inset:0;pointer-events:none;content:"";opacity:.42;background-image:linear-gradient(rgba(114,185,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(114,185,255,.07) 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle at 48% 48%,black,transparent 72%)}
.stage-caption{position:absolute;top:28px;left:30px;z-index:3;color:var(--color-teal-light);font-size:.73rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.demo-globe{position:absolute;top:50%;left:46%;width:min(68%,470px);aspect-ratio:1;border:1px solid rgba(114,185,255,.42);background:radial-gradient(ellipse at 38% 36%,rgba(17,214,191,.15),transparent 26%),repeating-radial-gradient(circle at 50% 50%,transparent 0 38px,rgba(114,185,255,.12) 39px 40px),linear-gradient(145deg,rgba(8,120,249,.18),rgba(3,16,31,.8));border-radius:50%;box-shadow:inset -30px -18px 70px rgba(0,0,0,.44),0 0 80px rgba(8,120,249,.18);transform:translate(-50%,-50%)}
.demo-globe::before,.demo-globe::after{position:absolute;inset:13% 0;content:"";border:1px solid rgba(114,185,255,.19);border-radius:50%}.demo-globe::before{transform:rotate(90deg) scaleX(.48)}.demo-globe::after{transform:rotate(24deg) scaleY(.42)}
.trace-path{position:absolute;z-index:1;height:34%;border-top:3px solid rgba(120,240,223,.9);border-radius:50%;filter:drop-shadow(0 0 8px rgba(17,214,191,.7))}.trace-path-one{top:26%;left:8%;width:84%;transform:rotate(13deg)}.trace-path-two{top:51%;left:23%;width:65%;transform:rotate(-31deg)}
.trace-marker{position:absolute;z-index:2;width:18px;height:18px;border:4px solid #06233a;background:var(--color-teal-light);border-radius:50%;box-shadow:0 0 0 7px rgba(17,214,191,.16),0 0 22px rgba(17,214,191,.72)}
.marker-one{top:31%;left:14%}.marker-two{top:43%;left:47%}.marker-three{top:61%;right:18%}.marker-four{right:28%;bottom:19%;background:#ff9a3d;box-shadow:0 0 0 7px rgba(255,154,61,.16),0 0 22px rgba(255,154,61,.62)}
.passport-card{position:absolute;right:5%;bottom:5%;z-index:4;width:min(54%,330px);padding:24px;border:1px solid rgba(120,240,223,.3);background:rgba(2,16,31,.88);border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.44);backdrop-filter:blur(18px)}
.passport-topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px}.passport-mark{width:38px;height:38px;display:inline-grid;place-items:center;color:#001018;background:linear-gradient(135deg,var(--color-teal),var(--color-blue-light));border-radius:11px;font-size:.75rem;font-weight:900}
.verified-pill{padding:5px 9px;color:var(--color-teal-light);background:rgba(17,214,191,.1);border:1px solid rgba(17,214,191,.24);border-radius:var(--radius-pill);font-size:.62rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.passport-card strong,.passport-card>span,.passport-card small{display:block}.passport-card strong{font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.12;letter-spacing:-.035em}.passport-card>span{margin-top:7px;color:var(--color-muted);font-size:.76rem}.passport-rule{height:1px;margin:22px 0 16px;background:var(--color-border)}.passport-card small{color:var(--color-teal-light);font-size:.68rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}
.featured-demo-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(38px,5vw,72px)}.demo-availability{display:inline-flex;align-items:center;gap:9px;color:var(--color-teal-light);font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.demo-availability>span{width:8px;height:8px;background:var(--color-teal);border-radius:50%;box-shadow:0 0 16px var(--color-teal)}
.featured-demo-copy h3{margin:18px 0;font-size:clamp(2rem,4vw,3.6rem);line-height:1;letter-spacing:-.052em}.featured-demo-copy>p{color:var(--color-muted)}.demo-capability-list{display:grid;gap:11px;margin:22px 0 34px;padding:0;list-style:none}.demo-capability-list li{position:relative;padding-left:25px;color:#d7e2f3;font-size:.91rem}.demo-capability-list li::before{position:absolute;top:.68em;left:0;width:9px;height:2px;content:"";background:linear-gradient(90deg,var(--color-blue-light),var(--color-teal));box-shadow:0 0 9px rgba(17,214,191,.65)}
.demo-launch-button{align-self:flex-start}.permanent-link-note{margin:18px 0 0;color:var(--color-subtle);font-size:.78rem}.demo-library-section{padding:clamp(82px,10vw,132px) 0}.demo-library-intro{max-width:780px}.demo-library-intro>p:last-child{max-width:650px;margin-top:22px}
.demo-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:46px}.demo-library-card{position:relative;min-height:330px;display:flex;flex-direction:column;padding:clamp(30px,4vw,48px);overflow:hidden;border:1px solid var(--color-border);background:rgba(255,255,255,.04);border-radius:var(--radius-md)}
.demo-library-card.is-live,.demo-library-card.is-capabilities{transition:transform 180ms ease,border-color 180ms ease,box-shadow 180ms ease}.demo-library-card.is-live{background:radial-gradient(circle at 90% 8%,rgba(17,214,191,.2),transparent 15rem),linear-gradient(145deg,rgba(8,120,249,.13),rgba(255,255,255,.045))}.demo-library-card.is-capabilities{background:radial-gradient(circle at 88% 12%,rgba(8,120,249,.22),transparent 16rem),linear-gradient(145deg,rgba(17,214,191,.08),rgba(255,255,255,.045))}.demo-library-card.is-live:hover,.demo-library-card.is-capabilities:hover{border-color:rgba(120,240,223,.42);box-shadow:var(--shadow-glow);transform:translateY(-4px)}
.library-status{align-self:flex-start;padding:6px 10px;color:var(--color-teal-light);background:rgba(17,214,191,.09);border:1px solid rgba(17,214,191,.2);border-radius:var(--radius-pill);font-size:.66rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.library-number{position:absolute;top:30px;right:34px;color:rgba(168,181,203,.42);font-size:.75rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.demo-library-card h3{max-width:480px;margin:auto 0 12px;font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.05;letter-spacing:-.04em}.demo-library-card p{max-width:570px;margin-bottom:24px;color:var(--color-muted)}.library-action{color:var(--color-text);font-size:.82rem;font-weight:800;letter-spacing:.04em}
.demo-contact-band{padding:0 0 clamp(90px,12vw,150px)}.demo-contact-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:clamp(34px,5vw,58px);border:1px solid rgba(120,240,223,.24);background:linear-gradient(115deg,rgba(17,214,191,.12),rgba(8,120,249,.1)),rgba(4,18,40,.8);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.demo-contact-band h2{max-width:760px;font-size:clamp(2rem,4vw,3.65rem)}
.launch-page{display:flex;flex-direction:column}.launch-main{min-height:calc(100vh - var(--header-height));display:grid;flex:1;place-items:center;padding:64px 20px}.launch-shell{position:relative;width:min(100%,760px);padding:clamp(44px,7vw,82px);overflow:hidden;text-align:center;border:1px solid rgba(120,240,223,.24);background:rgba(4,18,40,.9);border-radius:34px;box-shadow:0 44px 120px rgba(0,0,0,.42)}
.launch-glow{position:absolute;top:-18rem;left:50%;width:38rem;height:38rem;pointer-events:none;background:radial-gradient(circle,rgba(17,214,191,.27),rgba(8,120,249,.16) 38%,transparent 70%);transform:translateX(-50%)}.launch-logo,.launch-shell>*:not(.launch-glow){position:relative;z-index:1}.launch-logo{width:68px;height:68px;margin:0 auto 30px;border-radius:18px;box-shadow:0 18px 50px rgba(8,120,249,.28)}
.launch-shell h1{max-width:620px;margin:16px auto 22px;font-size:clamp(2.4rem,6vw,4.4rem);line-height:.98;letter-spacing:-.055em}.launch-shell>p:not(.eyebrow){max-width:590px;margin:0 auto;color:var(--color-muted)}.launch-progress{width:min(100%,420px);height:4px;margin:34px auto;overflow:hidden;background:rgba(255,255,255,.08);border-radius:var(--radius-pill)}.launch-progress span{width:46%;height:100%;display:block;background:linear-gradient(90deg,var(--color-blue),var(--color-teal-light));border-radius:inherit;box-shadow:0 0 18px rgba(17,214,191,.65);animation:launch-progress 1.2s ease-in-out infinite alternate}.launch-back-link{display:block;margin-top:20px;color:var(--color-muted);font-size:.83rem;text-decoration:underline;text-underline-offset:4px}
@keyframes launch-progress{from{transform:translateX(-18%)}to{transform:translateX(138%)}}
@media (max-width:940px){.demo-signal-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-signal:nth-child(3){border-left:0}.demo-signal:nth-child(n+3){border-top:1px solid var(--color-border)}.demo-section-heading,.featured-demo-card{grid-template-columns:1fr}.demo-section-heading{align-items:start}.demo-stage{min-height:520px;border-right:0;border-bottom:1px solid var(--color-border)}}
@media (max-width:680px){.demo-hero{padding-top:76px}.demo-hero h1{font-size:clamp(3rem,16vw,4.7rem)}.demo-signal-strip,.demo-library-grid{grid-template-columns:1fr}.demo-signal+.demo-signal{border-top:1px solid var(--color-border);border-left:0}.demo-section-heading{gap:24px}.featured-demo-card{border-radius:24px}.demo-stage{min-height:430px}.demo-globe{left:44%;width:78%}.passport-card{width:66%;padding:18px}.passport-topline{margin-bottom:28px}.demo-contact-inner{align-items:flex-start;flex-direction:column}.demo-contact-inner .button,.launch-shell .button{width:100%}.launch-main{padding-inline:14px}.launch-shell{padding-inline:24px;border-radius:24px}}
