/* App previews float directly on the scene; their surrounding layer is transparent. */
.app-phone{--phone-size:280px;width:var(--phone-size);height:calc(var(--phone-size)*2.04);position:relative;flex:none;border:1px solid #fff9;border-radius:calc(var(--phone-size)*.125);padding:calc(var(--phone-size)*.043);background:linear-gradient(140deg,#e2e6df55,#151919bb 18%,#111a);backdrop-filter:blur(18px);color:#fff;box-shadow:inset 0 0 0 3px #1116;overflow:hidden;text-align:left;letter-spacing:0;pointer-events:none}.phone-speaker{position:absolute;top:calc(var(--phone-size)*.037);left:36%;width:28%;height:calc(var(--phone-size)*.057);background:#070b0cf2;border-radius:30px}.phone-status{display:flex;justify-content:space-between;margin:calc(var(--phone-size)*.035) calc(var(--phone-size)*.035) calc(var(--phone-size)*.066);font-size:calc(var(--phone-size)*.039);line-height:1}.phone-appname{display:flex;justify-content:space-between;font-size:calc(var(--phone-size)*.062);padding:0 calc(var(--phone-size)*.03) calc(var(--phone-size)*.046);border-bottom:1px solid #fff3}.phone-appname>span{font-size:calc(var(--phone-size)*.041);color:#fff9}.phone-ui{padding:calc(var(--phone-size)*.045) calc(var(--phone-size)*.027)}.phone-ui>small{font-size:calc(var(--phone-size)*.036);letter-spacing:.045em;color:var(--acid);display:block}.phone-ui>h3{font-size:calc(var(--phone-size)*.105);font-weight:400;line-height:1.02;letter-spacing:-.045em;margin:calc(var(--phone-size)*.033) 0 calc(var(--phone-size)*.045)}.phone-art{width:100%;height:calc(var(--phone-size)*.49);object-fit:cover;border-radius:calc(var(--phone-size)*.022)}.phone-listen{display:flex;align-items:center;gap:calc(var(--phone-size)*.035);margin-top:calc(var(--phone-size)*.05)}.phone-play{display:grid;place-items:center;border-radius:50%;width:calc(var(--phone-size)*.14);height:calc(var(--phone-size)*.14);background:var(--orange);color:#111;font-size:calc(var(--phone-size)*.045);flex:none}.phone-listen small{font-size:calc(var(--phone-size)*.029);color:#ccc;display:block;margin-bottom:4px}.phone-listen strong{font-size:calc(var(--phone-size)*.046);line-height:1.1;font-weight:400;display:block}.phone-wave{display:flex;justify-content:space-between;align-items:center;height:calc(var(--phone-size)*.12);padding:calc(var(--phone-size)*.03) 0}.phone-wave>i{background:var(--acid);width:2px;height:40%}.phone-wave>i:nth-child(2n){height:85%}.phone-wave>i:nth-child(3n){height:60%}.phone-wave>i:nth-child(5n){height:100%}.phone-next{border-top:1px solid #fff3;padding-top:calc(var(--phone-size)*.035);display:flex;flex-direction:column;gap:calc(var(--phone-size)*.019)}.phone-next>small{color:#ccc;font-size:calc(var(--phone-size)*.031)}.phone-next>strong{font-size:calc(var(--phone-size)*.047);font-weight:400}.phone-next>span{color:#ccc;font-size:calc(var(--phone-size)*.036)}.phone-home{position:absolute;bottom:calc(var(--phone-size)*.025);left:35%;width:30%;height:3px;border-radius:20px;background:#fffa}.phone-route{width:100%;height:calc(var(--phone-size)*.20);display:block;margin-top:5px}.phone-route path{fill:none;stroke:var(--acid);stroke-width:2}.phone-route circle{fill:var(--orange);stroke:#fff;stroke-width:1}.phone-way .phone-art{height:calc(var(--phone-size)*.36)}.phone-way .phone-ui>h3{font-family:Nimbus,Arial,sans-serif;font-weight:400}.phone-way .phone-next>span{display:none}.phone-chips{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:calc(var(--phone-size)*.04)}.phone-chips>span{font-size:calc(var(--phone-size)*.032);border:1px solid #fff5;padding:4px 7px;border-radius:15px}.phone-chips>span:first-child{background:var(--acid);color:var(--ink);border-color:transparent}.phone-match .phone-art{height:calc(var(--phone-size)*.40)}.phone-match .phone-ui>h3{font-size:calc(var(--phone-size)*.10)}
.preview-apps{position:absolute;right:7%;top:50%;transform:translateY(-50%);z-index:2;pointer-events:none}.preview-apps .app-phone{--phone-size:min(20vw,225px,33vh);animation:phoneReveal .7s var(--ease)}.product-window .window-copy{z-index:1}.product-window .window-copy h2{max-width:55%;font-size:clamp(30px,3.8vw,61px);margin-block:auto 0}.product-window .window-copy a{max-width:52%;margin-top:24px}.product-window .window-copy>.eyebrow{max-width:55%}.product-window .window-images img{filter:brightness(.7)}.product-window .window-copy{background:linear-gradient(90deg,#111a,transparent 90%),linear-gradient(0deg,#1116,transparent)}.product-window .preview-close{z-index:4}.cast-detail-link{display:flex;justify-content:space-between;max-width:350px;padding:16px 0;margin-top:25px;border-bottom:1px solid #fff5;font-size:16px}.cast-detail-link:hover{color:var(--acid)}
/* A dedicated experience: one Cast, its own interface, and its own use cases. */
.detail-hero{height:92svh;min-height:740px;max-height:1100px;position:relative;isolation:isolate;overflow:hidden}.detail-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.detail-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#111b 5%,#1113 80%),linear-gradient(0deg,#1117,transparent 50%)}.all-cast{position:absolute;top:126px;left:7vw;font-size:14px;border-bottom:1px solid #fff5;padding:8px 0}.detail-intro{position:absolute;left:7vw;top:32%;width:55%}.detail-intro h1{font-size:clamp(75px,10.2vw,172px);line-height:.98;letter-spacing:-.065em;margin:30px 0}.detail-intro h1>span{color:var(--acid)}.detail-intro h2{font-size:clamp(27px,3.4vw,55px);line-height:1.05;letter-spacing:-.03em;max-width:550px}.detail-experience-link{display:flex;align-items:center;justify-content:space-between;max-width:250px;border-bottom:1px solid #fff6;padding:15px 0;margin-top:40px;font-size:15px}.detail-device{position:absolute;top:53%;right:9%;transform:translateY(-50%)}.detail-device .app-phone{--phone-size:clamp(240px,23vw,330px);background:linear-gradient(140deg,#eeeeea55,#111d 20%,#111c)}.detail-ed .detail-device{right:11%}.detail-way .detail-intro h2{font-family:Nimbus,Arial,sans-serif;letter-spacing:-.045em}.cast-detail .detail-body{grid-template-columns:1fr 1.3fr;padding:95px 7vw 80px;gap:55px 8vw}.cast-detail .product-description{position:sticky;top:125px}.cast-detail .product-description h3{font-size:clamp(50px,5.5vw,88px)}.cast-detail .product-description>.concept-label{margin-top:35px}.cast-detail .experience{border-radius:27px;border:7px solid #393936;padding:30px;box-shadow:0 0 0 1px #797972;overflow:hidden}.cast-detail .experience:before{display:none}.cast-detail .experience-top{padding-top:3px}.cast-detail .object-view{height:330px}.cast-detail .route-map{margin-top:30px}.cast-detail .category-uses{grid-column:1/-1;padding-top:45px;border-top:1px solid #fff4;display:grid;grid-template-columns:1fr 1.3fr;gap:20px 8vw;margin-top:25px}.category-uses .uses-label{font-size:13px;color:#aaa;grid-column:1;letter-spacing:.03em}.category-uses h4{grid-column:1;font-size:34px;line-height:1.1;letter-spacing:-.025em;margin:0;font-weight:400}.category-uses .uses-industries{grid-column:1;max-width:300px;font-size:16px;color:#bbb}.category-uses dl{grid-column:2;grid-row:1/5;margin:0}.category-uses dl>div{padding:22px 0;border-bottom:1px solid #fff3}.category-uses dl>div:first-child{padding-top:0}.category-uses dt{font-size:22px;margin-bottom:12px;letter-spacing:-.02em}.category-uses dd{margin:0;font-size:17px;line-height:1.5;color:#bfbfb7;max-width:510px}.detail-close{padding:70px 7vw;background:var(--orange);color:var(--ink)}.detail-close h2{font-size:clamp(48px,6.5vw,105px);letter-spacing:-.055em;line-height:1;margin:40px 0}.detail-close>div{display:flex;justify-content:space-between;gap:25px}.detail-close a{border-bottom:1px solid #1116;padding:12px 0;font-size:18px}.cast-detail footer{padding-top:45px}.cast-detail .footer-word{font-size:17vw}.cast-detail .footer-word>span{font-size:2.5vw;margin-top:2vw}
@keyframes phoneReveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.detail-device{right:6%}.detail-ed .detail-device{right:6%}.detail-device .app-phone{--phone-size:260px}.detail-intro{width:53%}.detail-intro h1{font-size:10vw}.detail-intro h2{font-size:32px}.cast-detail .detail-body{padding:70px 5vw;column-gap:5vw}.cast-detail .experience{padding:22px;border-width:5px}.cast-detail .category-uses{gap:20px 5vw}.cast-detail .object-view{height:290px}.category-uses dt{font-size:20px}}
@media(max-width:700px){.preview-apps{right:6%;top:51%}.preview-apps .app-phone{--phone-size:clamp(115px,30vw,165px)}.product-window .window-copy{padding:22px}.product-window .window-copy h2{font-size:clamp(23px,6.2vw,33px);max-width:53%;line-height:1.07}.product-window .window-copy>.eyebrow{font-size:11px;max-width:50%}.product-window .window-copy a{font-size:13px;max-width:52%;margin-top:18px}.product-window .preview-close{top:12px;right:12px;width:31px;height:31px;font-size:20px}.detail-hero{height:auto;min-height:950px;max-height:none;padding:130px 22px 35px;display:flex;flex-direction:column;align-items:flex-start}.all-cast{position:static;font-size:13px}.detail-intro{position:static;width:100%;margin:40px 0 35px}.detail-intro>.eyebrow{font-size:12px}.detail-intro h1{font-size:20vw;margin:22px 0}.detail-intro h2{font-size:30px;max-width:300px}.detail-experience-link{margin-top:20px;font-size:14px;max-width:210px}.detail-device,.detail-ed .detail-device{position:static;transform:none;align-self:center;margin:0 0 12px}.detail-device .app-phone{--phone-size:220px}.detail-shade{background:linear-gradient(180deg,#1119,#1114 50%,#111a)}.cast-detail .detail-body{display:block;padding:50px 22px}.cast-detail .product-description{position:static;margin-bottom:35px}.cast-detail .product-description h3{font-size:13vw}.cast-detail .experience{padding:20px;border-width:4px;border-radius:24px}.cast-detail .object-view{height:260px}.cast-detail .category-uses{display:block;margin-top:50px;padding-top:30px}.category-uses h4{font-size:30px;margin:20px 0}.category-uses .uses-industries{font-size:16px;margin-bottom:30px;max-width:100%}.category-uses dl>div{padding:20px 0}.category-uses dd{font-size:16px}.detail-close{padding:45px 22px}.detail-close h2{font-size:12vw}.detail-close>div{flex-direction:column;align-items:flex-start;gap:12px}.detail-close a{font-size:17px}.cast-detail .footer-word{font-size:23vw}.cast-detail .footer-word>span{font-size:3vw}}
@media(prefers-reduced-motion:reduce){.preview-apps .app-phone{animation:none}}

/* Keep the pinned introduction inside the demo row, before the use-case section. */
.cast-detail .detail-body{display:block}.detail-demo{display:grid;grid-template-columns:1fr 1.3fr;gap:8vw;align-items:start;margin-bottom:65px}.cast-detail .detail-demo .product-description{position:sticky;top:125px;align-self:start}.cast-detail .category-uses{position:relative;margin-top:0}.cast-page:not(.cast-detail) .product-description{position:static}
@media(max-width:1100px){.detail-demo{gap:5vw}}
@media(max-width:700px){.detail-demo{display:block;margin-bottom:50px}.cast-detail .detail-demo .product-description{position:static}}
