/* Homepage-only video demonstration. Existing heroCopy typography and CTA are untouched. */
#demo:has(.home-duo){background:#fffaf5 url('/assets/iphone-duo/home-christmas-background-v2.webp') center bottom/cover no-repeat;isolation:isolate}
#demo:has(.home-duo)::before{content:'';position:absolute;inset:0;width:auto;height:auto;border:0;border-radius:0;box-shadow:none;background:linear-gradient(90deg,#fffdfbd9 0%,#fffdfb80 34%,#fffdfb00 62%);pointer-events:none;z-index:-1}
#demo:has(.home-duo)::after{content:none}
.heroVisual.home-duo{height:auto;min-height:500px;margin:0;transform:none;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;min-width:0;padding:24px 0 33px}
.heroVisual.home-duo::before,.heroVisual.home-duo::after{content:none}
.home-duo-stage{position:relative;width:100%;aspect-ratio:4/3;overflow:visible;background:transparent}
.home-duo-stage::before{content:'';position:absolute;left:50%;bottom:-1%;width:var(--duo-ground-width,82%);height:6%;transform:translateX(-50%) rotate(2deg);background:radial-gradient(ellipse,#54392355 0%,#71553c2b 30%,transparent 72%);filter:blur(5px);pointer-events:none}
.home-duo-poster,.home-duo-video,.home-duo-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:translateY(calc(12% + var(--duo-pose-lift,0%))) scale(1.12);transform-origin:50% 74%}
.home-duo-poster{z-index:1;opacity:1}
.home-duo-video,.home-duo-canvas{z-index:2;opacity:0;pointer-events:none}
.home-duo.has-frame .home-duo-video{opacity:1}
.home-duo.has-frame .home-duo-canvas[data-compositor=ready]{opacity:1}
.home-duo.has-frame:not([data-alpha-video=true]) .home-duo-poster,.home-duo.has-frame:has(.home-duo-canvas[data-compositor=ready]) .home-duo-poster{opacity:0}
.home-duo[data-alpha-video=true] .home-duo-video{width:1px;height:1px;inset:auto;opacity:0!important;pointer-events:none}
.home-duo-controls{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;margin:16px 0 7px;position:relative;z-index:3}
.home-duo-slider{display:block;width:220px;padding:8px 18px 10px;border:1px solid #ebdfd3;border-radius:30px;background:#fffcf8e0;color:#624c3e;box-shadow:0 5px 16px #65422b04}
.home-duo-slider>span{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:10px;line-height:1.2;margin-bottom:5px}
.home-duo-slider output{font-size:9px;color:#9a7c65;font-variant-numeric:tabular-nums}
.home-duo-slider input{display:block;width:100%;height:4px;margin:8px 0 3px;appearance:none;-webkit-appearance:none;border:0;border-radius:10px;background:#d5c5b6;accent-color:#78513b;cursor:ew-resize}
.home-duo-slider input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:16px;height:16px;border:3px solid #fff9f1;border-radius:50%;background:#6e4935;box-shadow:0 0 0 1px #9c7255}
.home-duo-slider input::-moz-range-thumb{width:11px;height:11px;border:3px solid #fff9f1;border-radius:50%;background:#6e4935;box-shadow:0 0 0 1px #9c7255}
.home-duo-replay{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 17px;border:1px solid #e9dacb;border-radius:30px;background:#fff9f1;color:#654534;font:500 11px/1.2 var(--sans);cursor:pointer;white-space:nowrap}
.home-duo-replay svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.home-duo-pause{border:0;padding:9px 5px;background:none;color:#907661;font:500 10px/1.2 var(--sans);cursor:pointer}
.home-duo-pause[hidden]{display:none}
.home-duo-presets{display:flex;justify-content:center;gap:6px;width:100%;margin:0}
.home-duo-presets button{padding:5px 10px;border:0;border-radius:7px;background:none;color:#a18b78;font:400 10px/1.2 var(--sans);cursor:pointer;min-height:28px}
.home-duo-presets button[aria-pressed=true]{color:#6b4530;background:#f8ebde}
.home-duo-presets button:hover:not(:disabled),.home-duo-pause:hover{color:#9d481e;background:#fff0e1}
.home-duo button:disabled,.home-duo input:disabled{opacity:.45;cursor:default}
.home-duo button:focus-visible,.home-duo input:focus-visible,.home-duo-explore:focus-visible{outline:2px solid #c87643;outline-offset:4px}
.hero .home-duo-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}
.home-duo-explore{display:inline-flex;align-items:center;justify-content:center;gap:10px;color:#c76536;text-decoration:none;font:500 12px/1.4 var(--sans);padding:4px 0;border-bottom:1px solid #e8bd9d}
.home-duo-explore{margin-top:10px;color:#a34c26;border-color:#dcb18f}
.home-duo-explore:hover{color:#a94518;border-color:#c87d4e}
@media(max-width:1100px) and (min-width:961px){.home-duo-controls{gap:8px}.home-duo-slider{width:188px}.home-duo-replay{padding:10px 13px}.home-duo-explore{font-size:11px}}
@media(max-width:960px){#demo:has(.home-duo){background-size:auto 90%;background-position:72% bottom}.heroVisual.home-duo{min-height:0;width:min(680px,100%);margin:0 auto;padding:4px 0 62px}.home-duo-stage{aspect-ratio:4/3}.home-duo-controls{margin-top:0}}
@media(max-width:620px){#demo:has(.home-duo)::before{background:linear-gradient(#fffdfbe6 0%,#fffdfbd9 44%,#fffdfb10 77%)}.heroVisual.home-duo{padding:0 0 54px}.home-duo-stage{aspect-ratio:4/3;margin-top:-8px}.home-duo-slider{width:190px;padding-inline:16px}.home-duo-controls{gap:8px}.home-duo-replay{padding:10px 14px;min-height:41px}.home-duo-pause{font-size:10px;padding-inline:0}.home-duo-explore{font-size:11px;gap:8px}.home-duo-presets button{font-size:10px}}
@media(max-width:370px){.home-duo-slider{width:164px}.home-duo-replay{font-size:10px;padding-inline:12px}.home-duo-controls{gap:7px}.home-duo-explore{font-size:10px}}
/* Hover warms the renderer; the very first press-and-drag can take over. */
.home-duo-stage{cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.home-duo-stage.is-dragging{cursor:grabbing}
.home-duo.is-3d .home-duo-stage.is-dragging{cursor:grabbing}
.home-duo.is-3d .home-duo-stage.is-dragging .home-duo-live-frame{pointer-events:none}
.home-duo-interaction-actions{position:absolute;top:9px;right:8px;z-index:6;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;max-width:100%;padding-left:8px}
.home-duo-3d-button{min-height:36px;padding:8px 13px;border:1px solid #dfcabb;border-radius:22px;background:#fffaf3ed;color:#76513b;font:500 11px/1.3 var(--sans);cursor:pointer;box-shadow:0 3px 14px #63402708}
.home-duo-3d-button:hover:not(:disabled){background:#fff0e1;border-color:#c99c7a}
.home-duo-3d-message{font:400 11px/1.4 var(--sans);color:#795f4c;max-width:250px;padding:5px 9px;border-radius:9px;background:#fffaf3ed}
.home-duo-live-frame{position:absolute;inset:0;z-index:5;width:100%;height:100%;border:0;background:transparent;opacity:0;pointer-events:none}
.home-duo.is-3d .home-duo-stage{height:clamp(390px,42vw,570px);aspect-ratio:auto;cursor:auto}
.home-duo.is-3d .home-duo-live-frame{opacity:1;pointer-events:auto}
.home-duo.is-3d .home-duo-poster,.home-duo.is-3d .home-duo-canvas,.home-duo.is-3d .home-duo-video,.home-duo.is-3d .home-duo-stage::before{visibility:hidden}
.home-duo-controls[hidden],.home-duo-presets[hidden],.home-duo-3d-button[hidden],.home-duo-3d-message[hidden]{display:none}
@media(max-width:620px){.home-duo-interaction-actions{top:3px;right:0}.home-duo-3d-button{font-size:11px;min-height:38px}.home-duo-3d-message{max-width:200px;font-size:10px}}
