.home-app-product{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,390px);gap:80px;align-items:center;max-width:1000px;margin:0 auto}
.home-app-story{min-width:0;max-width:430px}
.home-app-story>img{width:80px;height:80px;border-radius:18px}
.home-app-story h3{font-size:34px;line-height:1.15;margin:22px 0}
.home-app-story p{font-size:17px;line-height:1.7;color:#b8c1ca}
.home-app-device{width:100%;max-width:390px;height:760px;border:7px solid #52606d;border-radius:34px;overflow:hidden;box-shadow:0 30px 55px #0005}
.home-app-device iframe{display:block;width:100%;height:100%;border:0;background:#f5f6f8}
.home-app-store{display:flex;align-items:center;gap:12px;width:fit-content;margin-top:24px;font-size:14px}
.home-app-store svg{width:18px;height:18px}
.home-web-showcase{position:relative;perspective:1600px}
.home-app-gallery{min-width:0;width:100%;max-width:290px;justify-self:center;padding-top:16px;perspective:1100px}
.home-app-gallery .home-app-device{height:auto;aspect-ratio:664/1327;background:#17121d;border-width:5px;border-color:#424650}
.home-app-device>img{display:block;width:100%;height:100%;object-fit:contain}
.home-app-device>img[data-view=home]{object-fit:cover;object-position:center top;transform:scale(1.025);transform-origin:center top}
.home-app-views{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:24px}
.home-app-views button{flex:1 1 105px;background:transparent;color:#b8c1ca;border:0;border-bottom:2px solid #424650;padding:12px 4px;font:inherit;font-size:13px;cursor:pointer}
.home-app-views button[aria-pressed=true]{color:#14d5cf;border-color:#14d5cf}
.home-app-views button:focus-visible{outline:2px solid #14d5cf;outline-offset:4px}
.home-app-capture-note{font-size:12px;color:#b8c1ca;line-height:1.5}
.home-app-gallery .home-app-device.has-3d{border:0;border-radius:0;background:transparent;box-shadow:none;animation:none;overflow:visible}
.home-app-device.has-3d>img{visibility:hidden}
.cals-phone-canvas{display:none;position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y}
.has-3d>.cals-phone-canvas{display:block}
.cals-motion-toggle{display:none;position:absolute;right:0;bottom:0;z-index:2;width:44px;height:44px;padding:0;border:1px solid #52606d;border-radius:50%;background:#101419;color:#14d5cf;cursor:pointer;font-size:17px}
.has-3d>.cals-motion-toggle{display:block}
.cals-motion-toggle:focus-visible{outline:2px solid #14d5cf;outline-offset:4px}
.computer-stage{position:relative;width:100%;height:720px;overflow:hidden;background:transparent}
.home-knowledge:not(.computer-ready):not(.computer-unavailable){position:relative;min-height:800px}
.home-knowledge:not(.computer-ready):not(.computer-unavailable)>iframe{position:absolute;inset:0;width:100%;height:720px;visibility:hidden}
.home-knowledge:not(.computer-ready):not(.computer-unavailable)>.computer-stage,.home-knowledge:not(.computer-ready):not(.computer-unavailable)>.computer-controls{visibility:hidden;position:absolute}
@media(max-width:650px){.home-knowledge:not(.computer-ready):not(.computer-unavailable){min-height:510px}.home-knowledge:not(.computer-ready):not(.computer-unavailable)>iframe{height:430px}}
.home-software-workspace:not(.computer-ready):not(.computer-unavailable)>iframe{display:none}
.home-software-workspace:not(.computer-ready):not(.computer-unavailable)::after{content:"";display:block;height:800px;background:url('/assets/cinema/masterfv-computer-preview.png') center top/100% 720px no-repeat}
.home-software-workspace:not(.computer-ready)>.computer-stage,.home-software-workspace:not(.computer-ready)>.computer-controls{visibility:hidden;position:absolute}
@media(max-width:650px){.home-software-workspace:not(.computer-ready):not(.computer-unavailable)::after{height:510px;background-size:100% auto;background-position:center}}
.computer-hardware,.computer-html{position:absolute;inset:0}
.computer-hardware{pointer-events:none}
.computer-surface{width:1100px;height:680px;overflow:hidden;background:#101419}
.home-software-workspace .computer-surface iframe,.home-knowledge .computer-surface iframe{width:1100px;height:680px;border:0}
.computer-controls{display:flex;justify-content:center;gap:12px;padding:12px 0 24px;flex-wrap:wrap}
.computer-controls button{min-height:44px;padding:10px 16px;border:1px solid #52606d;border-radius:4px;color:#14d5cf;background:#101419;cursor:pointer}
.computer-controls button:focus-visible{outline:2px solid #14d5cf;outline-offset:3px}
.home-software-workspace.computer-expanded,.home-knowledge.computer-expanded{position:fixed;inset:0;z-index:1500;background:#101419;overflow:auto;padding:16px}
.computer-expanded .computer-stage{height:calc(100dvh - 170px)}
.computer-expanded .computer-hardware{visibility:hidden}
.computer-expanded .computer-html,.computer-expanded .computer-html div{transform:none!important;position:static!important;width:100%!important;height:100%!important}
.computer-expanded .computer-surface iframe{width:100%;height:100%}
.home-knowledge.computer-expanded .computer-surface iframe{width:100%;height:100%}
@media(max-width:650px){.computer-stage{height:430px}.computer-expanded .computer-stage{height:calc(100dvh - 190px)}}
.home-app-gallery .home-app-device{position:relative;border-color:#57616b;box-shadow:1px 0 0 #14d5cf99,-4px 4px 0 #252c33,0 24px 36px #0006;animation:cals-float 6s ease-in-out infinite;animation-play-state:paused}
.home-app-gallery.is-visible .home-app-device{animation-play-state:running}
.home-app-gallery:focus-within .home-app-device{animation-play-state:paused}
@keyframes cals-float{0%,100%{transform:translateY(0) rotateY(-4deg) rotateZ(-1deg)}50%{transform:translateY(-12px) rotateY(4deg) rotateZ(1deg)}}
@media(max-width:760px){.home-app-gallery{max-width:250px}}
@media(prefers-reduced-motion:reduce){.home-app-gallery .home-app-device{animation:none;transform:none}}
.home-web-examples{display:grid;grid-template-columns:minmax(0,1fr);max-width:480px;margin-top:32px;border-top:1px solid #52606d}
.home-web-examples a{display:flex;align-items:center;gap:16px;padding:24px 16px 24px 0;border-bottom:1px solid #52606d;text-decoration:none;font-size:15px;line-height:1.5}
.home-web-examples span{color:#14d5cf;font:12px monospace}
.home-web-examples svg{margin-left:auto;width:20px;min-width:20px}
@media(max-width:760px){.home-app-product{grid-template-columns:minmax(0,1fr);gap:35px}.home-app-story{max-width:none}.home-app-device{justify-self:center;height:710px}.home-app-story h3{font-size:28px}.home-web-examples{grid-template-columns:1fr}.home-web-examples a{padding:18px 0}}
