/* A restrained device stage; masters stay separate from exact app captures. */
.ap-device-scene{position:relative;isolation:isolate;width:100%;aspect-ratio:var(--device-ratio);flex:none}
.ap-device-scene>.ap-device-shell{display:block;width:100%;height:100%;object-fit:contain;max-width:none;filter:none;transform:none}
.ap-device-scene>.ap-foldable-dark{position:absolute;inset:0;opacity:0}
[data-theme="dark"] .ap-device-scene>.ap-foldable-light{opacity:0}
[data-theme="dark"] .ap-device-scene>.ap-foldable-dark{opacity:1}
.ap-device-screen{position:absolute;top:0;left:0;transform-origin:0 0;overflow:hidden;border-radius:45px;background:#0e1216;visibility:hidden;backface-visibility:hidden}
.ap-device-screen.is-fitted{visibility:visible}
.ap-device-screen img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;transform:none!important}
.ap-device-screen[data-screen-fit="contain"] img{object-fit:contain;object-position:center}
.ap-device-screen:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,#fff1,transparent 28%,transparent 73%,#fff04);border:1px solid #ffffff0d;border-radius:inherit}
.ap-device-closed-music .ap-device-screen{border-radius:18px 125px 125px 18px}
.ap-device-tent-calendar .ap-device-screen{border-radius:25px}
.ap-device-camera{position:absolute;display:block;left:83.5%;top:12.3%;width:6.5%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 50% 50%,#12305a 0%,#050b14 14%,#020205 23%,#000 30%);z-index:4}
.ap-device-tent-calendar .ap-device-camera{left:91.9%;top:71%;width:3.6%}
.ap-device-fold{position:absolute;left:48.6%;top:6.4%;width:1.3%;height:85.1%;background:linear-gradient(90deg,#050607b3,#000d,#05060799);z-index:4;border-radius:15px}
.ap-hero-devices{position:absolute;right:1%;top:165px;width:min(58%,1030px);height:auto;z-index:1;transform:translate3d(calc(var(--phone-x,0px)*-.6),calc(var(--phone-y,0px)*-.6),0)}
.ap-hero-selected .ap-device-scene{width:100%;filter:drop-shadow(0 20px 30px #11182714)}
[data-theme="dark"] .ap-hero-selected .ap-device-scene{filter:drop-shadow(0 25px 35px #0005)}
.ap-device-in-hand,.ap-device-portrait-home,.ap-device-portrait-chat{mask-image:linear-gradient(#000 0%,#000 92%,transparent 100%)}
.ap-case-device{background:radial-gradient(ellipse at 50% 40%,var(--ap-soft),var(--ap-paper));border:1px solid var(--ap-line);border-radius:26px;overflow:hidden;padding:35px 30px 15px}
.ap-case-device .ap-device-scene{max-width:850px;margin:0 auto}
.ap-case-device .ap-device-closed-music{max-width:410px}
.ap-case-device img{max-height:none;border-radius:0}
.ap-case-device figcaption{margin:20px 0 0;font-size:9px;line-height:1.7}
.ap-service-project-image.ap-service-project-device{background:radial-gradient(ellipse at 50% 45%,var(--ap-soft),var(--ap-paper));padding:18px;overflow:visible}
.ap-service-project-device .ap-device-scene>.ap-device-shell{aspect-ratio:auto;object-fit:contain;object-position:center}
.ap-service-project-device:hover img{transform:none}
@media(max-width:1100px) and (min-width:901px){.ap-hero-devices{right:0;top:235px;width:56%}}
@media(max-width:900px){.ap-full-site .ap-eureka{padding-top:600px;min-height:1030px}.ap-hero-devices{left:50%;right:auto;top:110px;width:min(96%,620px);height:auto;transform:translateX(-50%)}}
@media(max-width:680px){.ap-full-site .ap-eureka{padding-top:430px;min-height:870px}.ap-hero-devices{top:105px;width:100%;height:auto}.ap-case-device{padding:20px 16px 14px;border-radius:18px}.ap-case-device figcaption{font-size:8px}.ap-case-device .ap-device-closed-music{max-width:280px}.ap-service-project-image.ap-service-project-device{padding:10px}}
@media(max-width:360px){.ap-full-site .ap-eureka{padding-top:375px;min-height:810px}.ap-hero-devices{top:100px;height:auto}}
@media(prefers-reduced-motion:reduce){.ap-hero-devices{transform:none}}
@media(max-width:900px) and (prefers-reduced-motion:reduce){.ap-hero-devices{transform:translateX(-50%)}}
/* iPhone captures are split into sharp, repositionable regions rather than stretched. */
.ap-invo-duo{display:grid;grid-template-columns:1fr 1fr;width:100%;height:100%;background:#000}
.ap-invo-pane{display:flex;flex-direction:column;width:100%;height:100%;padding:24px 20px 15px;background:#000;overflow:hidden;gap:20px;box-sizing:border-box}
.ap-invo-duo .ap-invo-pane:first-child{border-right:2px solid #25272b}
.ap-invo-toolbar{flex:none;width:100%}
.ap-capture-crop{position:relative;display:block;width:100%;overflow:hidden;flex:none}
.ap-device-screen .ap-capture-crop img{position:absolute;display:block;width:var(--crop-width);height:auto;max-width:none;max-height:none;left:var(--crop-left);top:var(--crop-top);object-fit:initial;object-position:initial;border-radius:0;aspect-ratio:auto}
.ap-invo-dashboard-body{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0;overflow:hidden}
.ap-invo-chart{flex:1;min-height:0;overflow:hidden;border-radius:25px}
.ap-invo-bottom{margin-top:auto;flex:none}
.ap-invo-assistant{gap:35px}
.ap-invo-greeting{flex:none}
.ap-invo-composer{margin-top:auto;display:flex;flex-direction:column;gap:10px}
.ap-invo-composer>.ap-capture-crop:last-child{width:70%;margin:0 auto}
.ap-device-in-hand .ap-device-screen{border-radius:55px 0 0 24px}
.ap-device-in-hand .ap-screen-assistant{border-radius:0 55px 24px 0}
.ap-screen-assistant .ap-invo-pane{padding-top:40px}
.ap-brand-screen{display:flex;align-items:center;justify-content:center;flex-direction:column;height:100%;padding:7%;box-sizing:border-box;background:radial-gradient(ellipse at 50% 35%,#20242d,#080a0e);color:#f2f2f2;text-align:center;font-family:Arial,sans-serif}
.ap-brand-screen>img{width:68%;height:65%;object-fit:contain;object-position:center}
.ap-brand-screen>span{font-size:38px;letter-spacing:-.04em;margin-top:20px}
.ap-brand-screen>small{font:12px monospace;letter-spacing:.08em;color:#a9adb5;margin-top:14px}
.ap-invo-dashboard{gap:12px}
.ap-invo-balance{position:relative;aspect-ratio:2.4;flex:none;background:#000}
.ap-invo-wallet{position:absolute;right:8%;bottom:0;width:18%}
.ap-invo-chart>.ap-capture-crop{width:85%;margin:0 auto}
.ap-device-portrait-home .ap-device-screen{border-radius:15px 110px 110px 15px}
.ap-device-portrait-home .ap-device-camera{left:69.3%;top:11.3%;width:4.7%}
.ap-device-in-hand .ap-device-screen{z-index:2}
.ap-device-glass-backplate{position:absolute;inset:0;background:#000;z-index:1;clip-path:polygon(24.2% 11.5%,50% 14.6%,75.7% 11.5%,78.1% 14.8%,78.8% 27%,77.7% 33%,78.4% 74%,77.2% 77.1%,50% 74.7%,23.4% 77.1%,22.4% 76%,21.3% 35%,21.1% 27%,21.8% 16.2%)}
