{
  "id": "pm-004-abstract-motion-reel",
  "css": "",
  "fps": 30,
  "html": "<div style=\"left:0px;top:0px;width:1080px;height:1080px;background:#101436;border-radius:0px\" data-jc-track=\"0\" data-jc-duration=\"4\" data-jc-start=\"0\" data-jc-name=\"A / navy background\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-1\"></div><div data-jc-transition-to=\"shape-2\" data-jc-transition-from=\"shape-1\" data-jc-transition-easing=\"ease-in-out\" data-jc-transition-duration=\"0.6\" data-jc-transition=\"iris-out\" style=\"left:0px;top:0px;width:1080px;height:1080px;background:#22B8A8;border-radius:0px\" data-jc-track=\"0\" data-jc-duration=\"3.6\" data-jc-start=\"3.4\" data-jc-name=\"B / teal background\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-2\"></div><div data-jc-transition-to=\"shape-3\" data-jc-transition-from=\"shape-2\" data-jc-transition-easing=\"ease-in-out\" data-jc-transition-duration=\"0.6\" data-jc-transition=\"checker-reveal\" style=\"left:0px;top:0px;width:1080px;height:1080px;background:#F6EFE6;border-radius:0px\" data-jc-track=\"0\" data-jc-duration=\"3.6\" data-jc-start=\"6.4\" data-jc-name=\"C / cream background\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-3\"></div><div data-jc-transition-to=\"shape-4\" data-jc-transition-from=\"shape-3\" data-jc-transition-easing=\"ease-in-out\" data-jc-transition-duration=\"0.6\" data-jc-transition=\"venetian-blinds\" style=\"left:0px;top:0px;width:1080px;height:1080px;background:#101436;border-radius:0px\" data-jc-track=\"0\" data-jc-duration=\"3.4\" data-jc-start=\"9.4\" data-jc-name=\"D / navy background\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-4\"></div><div data-jc-transition-to=\"shape-5\" data-jc-transition-from=\"shape-4\" data-jc-transition-easing=\"ease-in-out\" data-jc-transition-duration=\"0.6\" data-jc-transition=\"zoom-through\" style=\"left:0px;top:0px;width:1080px;height:1080px;background:#FFB38A;border-radius:0px\" data-jc-track=\"0\" data-jc-duration=\"2.8\" data-jc-start=\"12.2\" data-jc-name=\"E / peach background\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-5\"></div><div data-jc-animation=\"{&quot;tracks&quot;:[],&quot;program&quot;:{&quot;version&quot;:1,&quot;segments&quot;:[{&quot;id&quot;:&quot;in&quot;,&quot;property&quot;:&quot;scale&quot;,&quot;from&quot;:0.02,&quot;to&quot;:1,&quot;at&quot;:0,&quot;duration&quot;:0.8,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:200,&quot;damping&quot;:12,&quot;velocity&quot;:0}},{&quot;id&quot;:&quot;drift&quot;,&quot;property&quot;:&quot;x&quot;,&quot;from&quot;:470,&quot;to&quot;:420,&quot;at&quot;:1,&quot;duration&quot;:1.8,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:110,&quot;damping&quot;:13,&quot;velocity&quot;:0}}]}}\" style=\"left:470px;top:120px;width:480px;height:480px;background:#FFB38A;border-radius:240px\" data-jc-track=\"2\" data-jc-duration=\"3.25\" data-jc-start=\"0.15\" data-jc-name=\"A / peach circle\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-6\"></div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"down\" data-jc-text-motion-direction=\"up\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.38\" data-jc-text-duration=\"0.35\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"word\" data-jc-text-effect=\"fade-move\" style=\"left:74px;top:70px;width:600px;height:50px;color:#F6EFE6;font-family:Space Grotesk;font-size:30px;font-weight:700;text-align:left;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"3.3\" data-jc-start=\"0.1\" data-jc-name=\"A / chapter label\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-1\">01 / FORM</div><div data-jc-animation=\"{&quot;tracks&quot;:[],&quot;program&quot;:{&quot;version&quot;:1,&quot;segments&quot;:[{&quot;id&quot;:&quot;in&quot;,&quot;property&quot;:&quot;scale&quot;,&quot;from&quot;:0.02,&quot;to&quot;:1,&quot;at&quot;:0,&quot;duration&quot;:0.8,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:200,&quot;damping&quot;:12,&quot;velocity&quot;:0}},{&quot;id&quot;:&quot;turn&quot;,&quot;property&quot;:&quot;rotation&quot;,&quot;from&quot;:-45,&quot;to&quot;:0,&quot;at&quot;:0,&quot;duration&quot;:1.1,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:110,&quot;damping&quot;:13,&quot;velocity&quot;:0}},{&quot;id&quot;:&quot;slide&quot;,&quot;property&quot;:&quot;y&quot;,&quot;from&quot;:300,&quot;to&quot;:340,&quot;at&quot;:1.2,&quot;duration&quot;:1.2,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:110,&quot;damping&quot;:13,&quot;velocity&quot;:0}}]}}\" style=\"left:160px;top:300px;width:360px;height:360px;background:#22B8A8;border-radius:0px\" data-jc-track=\"3\" data-jc-duration=\"3.05\" data-jc-start=\"0.35\" data-jc-name=\"A / teal square\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-7\"></div><div data-jc-animation=\"{&quot;tracks&quot;:[],&quot;program&quot;:{&quot;version&quot;:1,&quot;segments&quot;:[{&quot;id&quot;:&quot;w&quot;,&quot;property&quot;:&quot;width&quot;,&quot;from&quot;:8,&quot;to&quot;:790,&quot;at&quot;:0,&quot;duration&quot;:0.9,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:110,&quot;damping&quot;:13,&quot;velocity&quot;:0}}]}}\" style=\"left:160px;top:700px;width:790px;height:26px;background:#F6EFE6;border-radius:13px\" data-jc-track=\"3\" data-jc-duration=\"2.8\" data-jc-start=\"0.6\" data-jc-name=\"A / cream bar\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-8\"></div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"down\" data-jc-text-motion-direction=\"up\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.3\" data-jc-text-exit-effect=\"blur\" data-jc-text-duration=\"0.7\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"character\" data-jc-text-effect=\"character-wave\" style=\"left:70px;top:760px;width:940px;height:260px;color:#F6EFE6;font-family:Plus Jakarta Sans;font-size:230px;font-weight:800;text-align:left;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"2.7\" data-jc-start=\"0.7\" data-jc-name=\"A / word form\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-2\">form</div><div data-jc-library-instance=\"{&quot;itemId&quot;:&quot;canvas.waves&quot;,&quot;version&quot;:&quot;1.0.0&quot;,&quot;start&quot;:3.4,&quot;duration&quot;:3.6,&quot;track&quot;:1,&quot;inputs&quot;:{&quot;background&quot;:&quot;transparent&quot;,&quot;color&quot;:&quot;#101436&quot;,&quot;accent&quot;:&quot;#F6EFE6&quot;,&quot;speed&quot;:0.9,&quot;amount&quot;:18}}\" data-jc-library-version=\"1.0.0\" data-jc-library-id=\"canvas.waves\" style=\"left:0px;top:0px;width:1080px;height:1080px;overflow:hidden;box-sizing:border-box;background:transparent\" data-jc-track=\"1\" data-jc-duration=\"3.6\" data-jc-start=\"3.4\" data-jc-name=\"B / Library waves canvas\" data-jc-kind=\"custom\" data-jc-clip=\"\" id=\"custom-1\"></div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"down\" data-jc-text-motion-direction=\"up\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.38\" data-jc-text-duration=\"0.35\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"word\" data-jc-text-effect=\"fade-move\" style=\"left:74px;top:70px;width:600px;height:50px;color:#101436;font-family:Space Grotesk;font-size:30px;font-weight:700;text-align:left;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"2.7\" data-jc-start=\"3.7\" data-jc-name=\"B / chapter label\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-3\">02 / FLOW</div><div data-jc-animation=\"{&quot;tracks&quot;:[],&quot;program&quot;:{&quot;version&quot;:1,&quot;segments&quot;:[{&quot;id&quot;:&quot;in&quot;,&quot;property&quot;:&quot;scale&quot;,&quot;from&quot;:0.02,&quot;to&quot;:1,&quot;at&quot;:0,&quot;duration&quot;:0.6,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:200,&quot;damping&quot;:12,&quot;velocity&quot;:0}},{&quot;id&quot;:&quot;travel&quot;,&quot;property&quot;:&quot;x&quot;,&quot;from&quot;:90,&quot;to&quot;:640,&quot;at&quot;:0.4,&quot;duration&quot;:0.9,&quot;repeat&quot;:1,&quot;yoyo&quot;:true,&quot;easing&quot;:&quot;ease-in-out&quot;},{&quot;id&quot;:&quot;stretch&quot;,&quot;property&quot;:&quot;width&quot;,&quot;from&quot;:300,&quot;to&quot;:420,&quot;at&quot;:0.4,&quot;duration&quot;:0.45,&quot;repeat&quot;:3,&quot;yoyo&quot;:true,&quot;easing&quot;:&quot;ease-in-out&quot;}]}}\" style=\"left:90px;top:420px;width:300px;height:120px;background:#F6EFE6;border-radius:60px\" data-jc-track=\"3\" data-jc-duration=\"2.6\" data-jc-start=\"3.8\" data-jc-name=\"B / cream pill\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-9\"></div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"left\" data-jc-text-motion-direction=\"right\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.3\" data-jc-text-exit-effect=\"fade-move\" data-jc-text-duration=\"0.6\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"word\" data-jc-text-effect=\"blur-slide\" style=\"left:70px;top:760px;width:940px;height:260px;color:#101436;font-family:Plus Jakarta Sans;font-size:230px;font-weight:800;text-align:left;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"2.5\" data-jc-start=\"3.9\" data-jc-name=\"B / word flow\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-4\">flow</div><div data-jc-library-instance=\"{&quot;itemId&quot;:&quot;canvas.halftone&quot;,&quot;version&quot;:&quot;1.0.0&quot;,&quot;start&quot;:6.4,&quot;duration&quot;:3.6,&quot;track&quot;:1,&quot;inputs&quot;:{&quot;background&quot;:&quot;transparent&quot;,&quot;color&quot;:&quot;#101436&quot;,&quot;accent&quot;:&quot;#FFB38A&quot;,&quot;speed&quot;:0.8,&quot;amount&quot;:40}}\" data-jc-library-version=\"1.0.0\" data-jc-library-id=\"canvas.halftone\" style=\"left:0px;top:0px;width:1080px;height:1080px;overflow:hidden;box-sizing:border-box;background:transparent\" data-jc-track=\"1\" data-jc-duration=\"3.6\" data-jc-start=\"6.4\" data-jc-name=\"C / Library halftone canvas\" data-jc-kind=\"custom\" data-jc-clip=\"\" id=\"custom-2\"></div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"down\" data-jc-text-motion-direction=\"up\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.38\" data-jc-text-duration=\"0.35\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"word\" data-jc-text-effect=\"fade-move\" style=\"left:74px;top:70px;width:600px;height:50px;color:#101436;font-family:Space Grotesk;font-size:30px;font-weight:700;text-align:left;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"2.7\" data-jc-start=\"6.7\" data-jc-name=\"C / chapter label\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-5\">03 / FIELD</div><div data-jc-animation=\"{&quot;tracks&quot;:[],&quot;program&quot;:{&quot;version&quot;:1,&quot;segments&quot;:[{&quot;id&quot;:&quot;in&quot;,&quot;property&quot;:&quot;scale&quot;,&quot;from&quot;:0.02,&quot;to&quot;:1,&quot;at&quot;:0,&quot;duration&quot;:0.7,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:200,&quot;damping&quot;:12,&quot;velocity&quot;:0}},{&quot;id&quot;:&quot;bob&quot;,&quot;property&quot;:&quot;y&quot;,&quot;from&quot;:230,&quot;to&quot;:290,&quot;at&quot;:0.8,&quot;duration&quot;:0.5,&quot;repeat&quot;:2,&quot;yoyo&quot;:true,&quot;easing&quot;:&quot;ease-in-out&quot;}]}}\" style=\"left:180px;top:230px;width:220px;height:220px;background:#FFB38A;border-radius:110px\" data-jc-track=\"3\" data-jc-duration=\"2.6\" data-jc-start=\"6.8\" data-jc-name=\"C / field dot 1\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-10\"></div><div data-jc-animation=\"{&quot;tracks&quot;:[],&quot;program&quot;:{&quot;version&quot;:1,&quot;segments&quot;:[{&quot;id&quot;:&quot;in&quot;,&quot;property&quot;:&quot;scale&quot;,&quot;from&quot;:0.02,&quot;to&quot;:1,&quot;at&quot;:0,&quot;duration&quot;:0.7,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:200,&quot;damping&quot;:12,&quot;velocity&quot;:0}},{&quot;id&quot;:&quot;bob&quot;,&quot;property&quot;:&quot;y&quot;,&quot;from&quot;:300,&quot;to&quot;:360,&quot;at&quot;:0.8,&quot;duration&quot;:0.5,&quot;repeat&quot;:2,&quot;yoyo&quot;:true,&quot;easing&quot;:&quot;ease-in-out&quot;}]}}\" style=\"left:470px;top:300px;width:140px;height:140px;background:#22B8A8;border-radius:70px\" data-jc-track=\"3\" data-jc-duration=\"2.48\" data-jc-start=\"6.92\" data-jc-name=\"C / field dot 2\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-11\"></div><div data-jc-animation=\"{&quot;tracks&quot;:[],&quot;program&quot;:{&quot;version&quot;:1,&quot;segments&quot;:[{&quot;id&quot;:&quot;in&quot;,&quot;property&quot;:&quot;scale&quot;,&quot;from&quot;:0.02,&quot;to&quot;:1,&quot;at&quot;:0,&quot;duration&quot;:0.7,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:200,&quot;damping&quot;:12,&quot;velocity&quot;:0}},{&quot;id&quot;:&quot;bob&quot;,&quot;property&quot;:&quot;y&quot;,&quot;from&quot;:180,&quot;to&quot;:240,&quot;at&quot;:0.8,&quot;duration&quot;:0.5,&quot;repeat&quot;:2,&quot;yoyo&quot;:true,&quot;easing&quot;:&quot;ease-in-out&quot;}]}}\" style=\"left:700px;top:180px;width:260px;height:260px;background:#101436;border-radius:130px\" data-jc-track=\"3\" data-jc-duration=\"2.36\" data-jc-start=\"7.04\" data-jc-name=\"C / field dot 3\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-12\"></div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"down\" data-jc-text-motion-direction=\"up\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.3\" data-jc-text-exit-effect=\"line-mask\" data-jc-text-duration=\"0.6\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"character\" data-jc-text-effect=\"character-rise\" style=\"left:70px;top:760px;width:940px;height:260px;color:#101436;font-family:Plus Jakarta Sans;font-size:230px;font-weight:800;text-align:left;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"2.5\" data-jc-start=\"6.9\" data-jc-name=\"C / word field\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-6\">field</div><div data-jc-library-instance=\"{&quot;itemId&quot;:&quot;canvas.equalizer&quot;,&quot;version&quot;:&quot;1.0.0&quot;,&quot;start&quot;:9.4,&quot;duration&quot;:3.2,&quot;track&quot;:1,&quot;inputs&quot;:{&quot;background&quot;:&quot;transparent&quot;,&quot;color&quot;:&quot;#FFB38A&quot;,&quot;accent&quot;:&quot;#22B8A8&quot;,&quot;speed&quot;:1.1,&quot;amount&quot;:32}}\" data-jc-library-version=\"1.0.0\" data-jc-library-id=\"canvas.equalizer\" style=\"left:0px;top:0px;width:1080px;height:1080px;overflow:hidden;box-sizing:border-box;background:transparent\" data-jc-track=\"1\" data-jc-duration=\"3.2\" data-jc-start=\"9.4\" data-jc-name=\"D / Library equalizer canvas\" data-jc-kind=\"custom\" data-jc-clip=\"\" id=\"custom-3\"></div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"down\" data-jc-text-motion-direction=\"up\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.38\" data-jc-text-duration=\"0.35\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"word\" data-jc-text-effect=\"fade-move\" style=\"left:74px;top:70px;width:600px;height:50px;color:#F6EFE6;font-family:Space Grotesk;font-size:30px;font-weight:700;text-align:left;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"2.5\" data-jc-start=\"9.7\" data-jc-name=\"D / chapter label\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-7\">04 / PULSE</div><div data-jc-animation=\"{&quot;tracks&quot;:[],&quot;program&quot;:{&quot;version&quot;:1,&quot;segments&quot;:[{&quot;id&quot;:&quot;in&quot;,&quot;property&quot;:&quot;scale&quot;,&quot;from&quot;:0.02,&quot;to&quot;:1,&quot;at&quot;:0,&quot;duration&quot;:0.6,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:200,&quot;damping&quot;:12,&quot;velocity&quot;:0}},{&quot;id&quot;:&quot;beat&quot;,&quot;property&quot;:&quot;scale&quot;,&quot;from&quot;:1,&quot;to&quot;:0.82,&quot;at&quot;:0.7,&quot;duration&quot;:0.25,&quot;repeat&quot;:5,&quot;yoyo&quot;:true,&quot;easing&quot;:&quot;ease-in-out&quot;}]}}\" style=\"left:640px;top:140px;width:300px;height:300px;background:#22B8A8;border-radius:150px\" data-jc-track=\"3\" data-jc-duration=\"2.4\" data-jc-start=\"9.8\" data-jc-name=\"D / teal disc\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-13\"></div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"down\" data-jc-text-motion-direction=\"up\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.3\" data-jc-text-exit-effect=\"zoom-out\" data-jc-text-duration=\"0.5\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"word\" data-jc-text-effect=\"word-scale\" style=\"left:70px;top:760px;width:940px;height:260px;color:#F6EFE6;font-family:Plus Jakarta Sans;font-size:230px;font-weight:800;text-align:left;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"2.3\" data-jc-start=\"9.9\" data-jc-name=\"D / word pulse\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-8\">pulse</div><div data-jc-library-instance=\"{&quot;itemId&quot;:&quot;canvas.orbits&quot;,&quot;version&quot;:&quot;1.0.0&quot;,&quot;start&quot;:12.4,&quot;duration&quot;:2.6,&quot;track&quot;:1,&quot;inputs&quot;:{&quot;background&quot;:&quot;transparent&quot;,&quot;color&quot;:&quot;#101436&quot;,&quot;accent&quot;:&quot;#F6EFE6&quot;,&quot;speed&quot;:0.7,&quot;amount&quot;:14}}\" data-jc-library-version=\"1.0.0\" data-jc-library-id=\"canvas.orbits\" style=\"left:0px;top:0px;width:1080px;height:1080px;overflow:hidden;box-sizing:border-box;background:transparent\" data-jc-track=\"1\" data-jc-duration=\"2.6\" data-jc-start=\"12.4\" data-jc-name=\"E / Library orbits canvas\" data-jc-kind=\"custom\" data-jc-clip=\"\" id=\"custom-4\"></div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"down\" data-jc-text-motion-direction=\"up\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.38\" data-jc-text-duration=\"0.7\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"character\" data-jc-text-effect=\"character-zoom\" style=\"left:0px;top:330px;width:1080px;height:300px;color:#101436;font-family:Plus Jakarta Sans;font-size:260px;font-weight:800;text-align:center;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"2.5\" data-jc-start=\"12.5\" data-jc-name=\"E / studio name\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-9\">ostra</div><div data-jc-text-replace-interval=\"0.8\" data-jc-text-seed=\"7\" data-jc-text-exit-blur=\"10\" data-jc-text-exit-distance=\"56\" data-jc-text-blur=\"10\" data-jc-text-distance=\"56\" data-jc-text-exit-motion-direction=\"down\" data-jc-text-motion-direction=\"up\" data-jc-text-exit-direction=\"reverse\" data-jc-text-exit-amount=\"0.045\" data-jc-text-exit-duration=\"0.38\" data-jc-text-duration=\"0.5\" data-jc-text-stagger-direction=\"forward\" data-jc-text-stagger-amount=\"0.06\" data-jc-text-stagger-unit=\"word\" data-jc-text-effect=\"blur-rise\" style=\"left:0px;top:650px;width:1080px;height:70px;color:#101436;font-family:Space Grotesk;font-size:44px;font-weight:700;text-align:center;white-space:normal;background:transparent;display:grid;align-content:center\" data-jc-track=\"3\" data-jc-duration=\"1.9\" data-jc-start=\"13.1\" data-jc-name=\"E / tagline\" data-jc-kind=\"text\" data-jc-clip=\"\" id=\"text-10\">abstract motion studio</div><div data-jc-animation=\"{&quot;tracks&quot;:[],&quot;program&quot;:{&quot;version&quot;:1,&quot;segments&quot;:[{&quot;id&quot;:&quot;w&quot;,&quot;property&quot;:&quot;width&quot;,&quot;from&quot;:8,&quot;to&quot;:200,&quot;at&quot;:0,&quot;duration&quot;:0.6,&quot;spring&quot;:{&quot;mass&quot;:1,&quot;stiffness&quot;:110,&quot;damping&quot;:13,&quot;velocity&quot;:0}}]}}\" style=\"left:440px;top:620px;width:200px;height:8px;background:#101436;border-radius:4px\" data-jc-track=\"3\" data-jc-duration=\"2\" data-jc-start=\"13\" data-jc-name=\"E / navy rule\" data-jc-kind=\"shape\" data-jc-clip=\"\" id=\"shape-14\"></div>",
  "name": "Form · Flow · Field · Pulse — Abstract Reel",
  "width": 1080,
  "format": "jsoncut-html",
  "height": 1080,
  "values": {},
  "version": 1,
  "duration": 15,
  "safeArea": {
    "top": 0,
    "left": 0,
    "right": 0,
    "bottom": 0
  },
  "variables": [],
  "customBlocks": [
    {
      "css": "canvas{display:block;width:100%;height:100%}",
      "html": "<canvas data-jsoncut-surface></canvas>",
      "inputs": {
        "seed": 39,
        "color": "#101436",
        "phase": 0.94,
        "speed": 0.9,
        "accent": "#F6EFE6",
        "amount": 18,
        "effect": "waves",
        "overlay": true,
        "variant": 3,
        "intensity": 1.45,
        "background": "transparent",
        "timingMode": "clip"
      },
      "adapter": "canvas-2d",
      "layerId": "custom-1",
      "javascript": "\nconst canvas=document.querySelector('canvas'),ctx=canvas.getContext('2d',{alpha:true});\nconst W=canvas.width=jsoncut.width,H=canvas.height=jsoncut.height,p=jsoncut.inputs,TAU=Math.PI*2;\nconst hash=n=>{const x=Math.sin(n*91.731+Number(p.seed||1)*17.17)*43758.5453;return x-Math.floor(x)};\nconst mix=(a,b,t)=>a+(b-a)*t;\nconst intensity=Math.max(.8,Math.min(2.2,Number(p.intensity||1.45))),visible=alpha=>Math.min(1,alpha*intensity);\nconst point=(x,y,r,color,alpha=1)=>{ctx.globalAlpha=visible(alpha);ctx.fillStyle=color;ctx.beginPath();ctx.arc(x,y,r,0,TAU);ctx.fill()};\nconst line=(points,color,width=1,alpha=1,close=false)=>{ctx.globalAlpha=visible(alpha);ctx.strokeStyle=color;ctx.lineWidth=width;ctx.beginPath();points.forEach(([x,y],i)=>ctx[i?'lineTo':'moveTo'](x,y));if(close)ctx.closePath();ctx.stroke()};\nconst frame=(inset,radius,color,width=1,alpha=1,dash=[],dashOffset=0)=>{const x=Math.max(0,inset),w=Math.max(1,W-x*2),h=Math.max(1,H-x*2);ctx.globalAlpha=visible(alpha);ctx.strokeStyle=color;ctx.lineWidth=width;ctx.setLineDash(dash);ctx.lineDashOffset=dashOffset;ctx.beginPath();ctx.roundRect(x,x,w,h,Math.min(radius,w/2,h/2));ctx.stroke();ctx.setLineDash([])};\nconst perimeterPoint=(distance,inset=0)=>{const x=Math.max(0,inset),w=Math.max(1,W-x*2),h=Math.max(1,H-x*2),length=2*(w+h),d=((distance%length)+length)%length;if(d<w)return[x+d,x,0];if(d<w+h)return[x+w,x+d-w,1];if(d<2*w+h)return[x+w-(d-w-h),x+h,2];return[x,x+h-(d-2*w-h),3]};\nconst renderEffect=(({ W, H, t, TAU, line, c, a }) => {\n        for (let j = 0; j < 12; j++) {\n            const pts = [];\n            for (let x = 0; x <= W; x += 9)\n                pts.push([x, H * (.1 + j * .073) + Math.sin(x / W * TAU * (1 + j % 4) + t * (.35 + j * .035) + j) * H * (.022 + j * .003)]);\n            line(pts, j % 3 ? c : a, 1.2 + j % 3, .07 + j * .035);\n        }\n    });\nfunction clean(){ctx.setTransform(1,0,0,1,0,0);ctx.globalAlpha=1;ctx.globalCompositeOperation='source-over';ctx.filter='none';ctx.shadowBlur=0;ctx.shadowColor='transparent';ctx.setLineDash([]);ctx.clearRect(0,0,W,H);ctx.fillStyle=String(p.background||'#090A0E');ctx.fillRect(0,0,W,H)}\nfunction draw(ms){\n  clean();\n  const t=ms/1000*Number(p.speed||1)+Number(p.phase||0),n=Math.max(6,Number(p.amount||30)),c=String(p.color||'#8B5CF6'),a=String(p.accent||'#FF9418'),v=Number(p.variant||0);\n  renderEffect({ctx,W,H,t,p,TAU,hash,mix,line,point,frame,perimeterPoint,n,c,a,v});\n  if(p.overlay!==false){ctx.save();ctx.globalCompositeOperation='screen';ctx.globalAlpha=.14;const rich=ctx.createRadialGradient(W*.38,H*.38,0,W*.5,H*.5,Math.hypot(W,H)*.7);rich.addColorStop(0,c);rich.addColorStop(.52,'transparent');rich.addColorStop(.72,a);rich.addColorStop(1,'transparent');ctx.fillStyle=rich;ctx.fillRect(0,0,W,H);ctx.restore()}\n  ctx.setTransform(1,0,0,1,0,0);ctx.globalAlpha=1;ctx.globalCompositeOperation='source-over';ctx.filter='none';\n}\njsoncut.onFrame(draw);"
    },
    {
      "css": "canvas{display:block;width:100%;height:100%}",
      "html": "<canvas data-jsoncut-surface></canvas>",
      "inputs": {
        "seed": 41,
        "color": "#101436",
        "phase": 1.88,
        "speed": 0.8,
        "accent": "#FFB38A",
        "amount": 40,
        "effect": "halftone",
        "overlay": true,
        "variant": 0,
        "intensity": 1.45,
        "background": "transparent",
        "timingMode": "clip"
      },
      "adapter": "canvas-2d",
      "layerId": "custom-2",
      "javascript": "\nconst canvas=document.querySelector('canvas'),ctx=canvas.getContext('2d',{alpha:true});\nconst W=canvas.width=jsoncut.width,H=canvas.height=jsoncut.height,p=jsoncut.inputs,TAU=Math.PI*2;\nconst hash=n=>{const x=Math.sin(n*91.731+Number(p.seed||1)*17.17)*43758.5453;return x-Math.floor(x)};\nconst mix=(a,b,t)=>a+(b-a)*t;\nconst intensity=Math.max(.8,Math.min(2.2,Number(p.intensity||1.45))),visible=alpha=>Math.min(1,alpha*intensity);\nconst point=(x,y,r,color,alpha=1)=>{ctx.globalAlpha=visible(alpha);ctx.fillStyle=color;ctx.beginPath();ctx.arc(x,y,r,0,TAU);ctx.fill()};\nconst line=(points,color,width=1,alpha=1,close=false)=>{ctx.globalAlpha=visible(alpha);ctx.strokeStyle=color;ctx.lineWidth=width;ctx.beginPath();points.forEach(([x,y],i)=>ctx[i?'lineTo':'moveTo'](x,y));if(close)ctx.closePath();ctx.stroke()};\nconst frame=(inset,radius,color,width=1,alpha=1,dash=[],dashOffset=0)=>{const x=Math.max(0,inset),w=Math.max(1,W-x*2),h=Math.max(1,H-x*2);ctx.globalAlpha=visible(alpha);ctx.strokeStyle=color;ctx.lineWidth=width;ctx.setLineDash(dash);ctx.lineDashOffset=dashOffset;ctx.beginPath();ctx.roundRect(x,x,w,h,Math.min(radius,w/2,h/2));ctx.stroke();ctx.setLineDash([])};\nconst perimeterPoint=(distance,inset=0)=>{const x=Math.max(0,inset),w=Math.max(1,W-x*2),h=Math.max(1,H-x*2),length=2*(w+h),d=((distance%length)+length)%length;if(d<w)return[x+d,x,0];if(d<w+h)return[x+w,x+d-w,1];if(d<2*w+h)return[x+w-(d-w-h),x+h,2];return[x,x+h-(d-2*w-h),3]};\nconst renderEffect=(({ W, H, t, point, c, a, v }) => {\n        for (let y = 14; y < H; y += 18 + v * 2)\n            for (let x = 14; x < W; x += 18 + v * 2) {\n                const r = 1.5 + 7 * (Math.sin(x * .012 + y * .015 + t) * .5 + .5);\n                point(x, y, r, (x + y) / (18 + v * 2) % 2 < 1 ? c : a, .45);\n            }\n    });\nfunction clean(){ctx.setTransform(1,0,0,1,0,0);ctx.globalAlpha=1;ctx.globalCompositeOperation='source-over';ctx.filter='none';ctx.shadowBlur=0;ctx.shadowColor='transparent';ctx.setLineDash([]);ctx.clearRect(0,0,W,H);ctx.fillStyle=String(p.background||'#090A0E');ctx.fillRect(0,0,W,H)}\nfunction draw(ms){\n  clean();\n  const t=ms/1000*Number(p.speed||1)+Number(p.phase||0),n=Math.max(6,Number(p.amount||30)),c=String(p.color||'#8B5CF6'),a=String(p.accent||'#FF9418'),v=Number(p.variant||0);\n  renderEffect({ctx,W,H,t,p,TAU,hash,mix,line,point,frame,perimeterPoint,n,c,a,v});\n  if(p.overlay!==false){ctx.save();ctx.globalCompositeOperation='screen';ctx.globalAlpha=.14;const rich=ctx.createRadialGradient(W*.38,H*.38,0,W*.5,H*.5,Math.hypot(W,H)*.7);rich.addColorStop(0,c);rich.addColorStop(.52,'transparent');rich.addColorStop(.72,a);rich.addColorStop(1,'transparent');ctx.fillStyle=rich;ctx.fillRect(0,0,W,H);ctx.restore()}\n  ctx.setTransform(1,0,0,1,0,0);ctx.globalAlpha=1;ctx.globalCompositeOperation='source-over';ctx.filter='none';\n}\njsoncut.onFrame(draw);"
    },
    {
      "css": "canvas{display:block;width:100%;height:100%}",
      "html": "<canvas data-jsoncut-surface></canvas>",
      "inputs": {
        "seed": 63,
        "color": "#FFB38A",
        "phase": 3.76,
        "speed": 1.1,
        "accent": "#22B8A8",
        "amount": 32,
        "effect": "equalizer",
        "overlay": true,
        "variant": 2,
        "intensity": 1.45,
        "background": "transparent",
        "timingMode": "clip"
      },
      "adapter": "canvas-2d",
      "layerId": "custom-3",
      "javascript": "\nconst canvas=document.querySelector('canvas'),ctx=canvas.getContext('2d',{alpha:true});\nconst W=canvas.width=jsoncut.width,H=canvas.height=jsoncut.height,p=jsoncut.inputs,TAU=Math.PI*2;\nconst hash=n=>{const x=Math.sin(n*91.731+Number(p.seed||1)*17.17)*43758.5453;return x-Math.floor(x)};\nconst mix=(a,b,t)=>a+(b-a)*t;\nconst intensity=Math.max(.8,Math.min(2.2,Number(p.intensity||1.45))),visible=alpha=>Math.min(1,alpha*intensity);\nconst point=(x,y,r,color,alpha=1)=>{ctx.globalAlpha=visible(alpha);ctx.fillStyle=color;ctx.beginPath();ctx.arc(x,y,r,0,TAU);ctx.fill()};\nconst line=(points,color,width=1,alpha=1,close=false)=>{ctx.globalAlpha=visible(alpha);ctx.strokeStyle=color;ctx.lineWidth=width;ctx.beginPath();points.forEach(([x,y],i)=>ctx[i?'lineTo':'moveTo'](x,y));if(close)ctx.closePath();ctx.stroke()};\nconst frame=(inset,radius,color,width=1,alpha=1,dash=[],dashOffset=0)=>{const x=Math.max(0,inset),w=Math.max(1,W-x*2),h=Math.max(1,H-x*2);ctx.globalAlpha=visible(alpha);ctx.strokeStyle=color;ctx.lineWidth=width;ctx.setLineDash(dash);ctx.lineDashOffset=dashOffset;ctx.beginPath();ctx.roundRect(x,x,w,h,Math.min(radius,w/2,h/2));ctx.stroke();ctx.setLineDash([])};\nconst perimeterPoint=(distance,inset=0)=>{const x=Math.max(0,inset),w=Math.max(1,W-x*2),h=Math.max(1,H-x*2),length=2*(w+h),d=((distance%length)+length)%length;if(d<w)return[x+d,x,0];if(d<w+h)return[x+w,x+d-w,1];if(d<2*w+h)return[x+w-(d-w-h),x+h,2];return[x,x+h-(d-2*w-h),3]};\nconst renderEffect=(({ ctx, W, H, t, hash, n, c, a }) => {\n        const bars = Math.max(18, n);\n        for (let i = 0; i < bars; i++) {\n            const h = H * (.06 + .76 * (Math.sin(t * 1.6 + i * .62) * .5 + .5) * (.32 + hash(i) * .68));\n            ctx.fillStyle = i % 4 ? a : c;\n            ctx.globalAlpha = .2 + .62 * hash(i + 2);\n            ctx.fillRect(i * W / bars, H / 2 - h / 2, W / bars * .64, h);\n        }\n    });\nfunction clean(){ctx.setTransform(1,0,0,1,0,0);ctx.globalAlpha=1;ctx.globalCompositeOperation='source-over';ctx.filter='none';ctx.shadowBlur=0;ctx.shadowColor='transparent';ctx.setLineDash([]);ctx.clearRect(0,0,W,H);ctx.fillStyle=String(p.background||'#090A0E');ctx.fillRect(0,0,W,H)}\nfunction draw(ms){\n  clean();\n  const t=ms/1000*Number(p.speed||1)+Number(p.phase||0),n=Math.max(6,Number(p.amount||30)),c=String(p.color||'#8B5CF6'),a=String(p.accent||'#FF9418'),v=Number(p.variant||0);\n  renderEffect({ctx,W,H,t,p,TAU,hash,mix,line,point,frame,perimeterPoint,n,c,a,v});\n  if(p.overlay!==false){ctx.save();ctx.globalCompositeOperation='screen';ctx.globalAlpha=.14;const rich=ctx.createRadialGradient(W*.38,H*.38,0,W*.5,H*.5,Math.hypot(W,H)*.7);rich.addColorStop(0,c);rich.addColorStop(.52,'transparent');rich.addColorStop(.72,a);rich.addColorStop(1,'transparent');ctx.fillStyle=rich;ctx.fillRect(0,0,W,H);ctx.restore()}\n  ctx.setTransform(1,0,0,1,0,0);ctx.globalAlpha=1;ctx.globalCompositeOperation='source-over';ctx.filter='none';\n}\njsoncut.onFrame(draw);"
    },
    {
      "css": "canvas{display:block;width:100%;height:100%}",
      "html": "<canvas data-jsoncut-surface></canvas>",
      "inputs": {
        "seed": 38,
        "color": "#101436",
        "phase": 0.47,
        "speed": 0.7,
        "accent": "#F6EFE6",
        "amount": 14,
        "effect": "orbits",
        "overlay": true,
        "variant": 2,
        "intensity": 1.45,
        "background": "transparent",
        "timingMode": "clip"
      },
      "adapter": "canvas-2d",
      "layerId": "custom-4",
      "javascript": "\nconst canvas=document.querySelector('canvas'),ctx=canvas.getContext('2d',{alpha:true});\nconst W=canvas.width=jsoncut.width,H=canvas.height=jsoncut.height,p=jsoncut.inputs,TAU=Math.PI*2;\nconst hash=n=>{const x=Math.sin(n*91.731+Number(p.seed||1)*17.17)*43758.5453;return x-Math.floor(x)};\nconst mix=(a,b,t)=>a+(b-a)*t;\nconst intensity=Math.max(.8,Math.min(2.2,Number(p.intensity||1.45))),visible=alpha=>Math.min(1,alpha*intensity);\nconst point=(x,y,r,color,alpha=1)=>{ctx.globalAlpha=visible(alpha);ctx.fillStyle=color;ctx.beginPath();ctx.arc(x,y,r,0,TAU);ctx.fill()};\nconst line=(points,color,width=1,alpha=1,close=false)=>{ctx.globalAlpha=visible(alpha);ctx.strokeStyle=color;ctx.lineWidth=width;ctx.beginPath();points.forEach(([x,y],i)=>ctx[i?'lineTo':'moveTo'](x,y));if(close)ctx.closePath();ctx.stroke()};\nconst frame=(inset,radius,color,width=1,alpha=1,dash=[],dashOffset=0)=>{const x=Math.max(0,inset),w=Math.max(1,W-x*2),h=Math.max(1,H-x*2);ctx.globalAlpha=visible(alpha);ctx.strokeStyle=color;ctx.lineWidth=width;ctx.setLineDash(dash);ctx.lineDashOffset=dashOffset;ctx.beginPath();ctx.roundRect(x,x,w,h,Math.min(radius,w/2,h/2));ctx.stroke();ctx.setLineDash([])};\nconst perimeterPoint=(distance,inset=0)=>{const x=Math.max(0,inset),w=Math.max(1,W-x*2),h=Math.max(1,H-x*2),length=2*(w+h),d=((distance%length)+length)%length;if(d<w)return[x+d,x,0];if(d<w+h)return[x+w,x+d-w,1];if(d<2*w+h)return[x+w-(d-w-h),x+h,2];return[x,x+h-(d-2*w-h),3]};\nconst renderEffect=(({ ctx, W, H, t, TAU, hash, n, c, a }) => {\n        ctx.save();\n        ctx.translate(W / 2, H / 2);\n        for (let i = 0; i < n; i++) {\n            const r = (.06 + i / n * .48) * Math.min(W, H);\n            ctx.strokeStyle = i % 3 ? c : a;\n            ctx.globalAlpha = .08 + i % 5 * .075;\n            ctx.lineWidth = 1 + i % 3;\n            ctx.beginPath();\n            ctx.ellipse(Math.sin(t * .14 + i) * W * .04, Math.cos(t * .11 + i) * H * .03, r, r * (.45 + hash(i) * .48), t * .06 + i, 0, TAU);\n            ctx.stroke();\n        }\n        ctx.restore();\n    });\nfunction clean(){ctx.setTransform(1,0,0,1,0,0);ctx.globalAlpha=1;ctx.globalCompositeOperation='source-over';ctx.filter='none';ctx.shadowBlur=0;ctx.shadowColor='transparent';ctx.setLineDash([]);ctx.clearRect(0,0,W,H);ctx.fillStyle=String(p.background||'#090A0E');ctx.fillRect(0,0,W,H)}\nfunction draw(ms){\n  clean();\n  const t=ms/1000*Number(p.speed||1)+Number(p.phase||0),n=Math.max(6,Number(p.amount||30)),c=String(p.color||'#8B5CF6'),a=String(p.accent||'#FF9418'),v=Number(p.variant||0);\n  renderEffect({ctx,W,H,t,p,TAU,hash,mix,line,point,frame,perimeterPoint,n,c,a,v});\n  if(p.overlay!==false){ctx.save();ctx.globalCompositeOperation='screen';ctx.globalAlpha=.14;const rich=ctx.createRadialGradient(W*.38,H*.38,0,W*.5,H*.5,Math.hypot(W,H)*.7);rich.addColorStop(0,c);rich.addColorStop(.52,'transparent');rich.addColorStop(.72,a);rich.addColorStop(1,'transparent');ctx.fillStyle=rich;ctx.fillRect(0,0,W,H);ctx.restore()}\n  ctx.setTransform(1,0,0,1,0,0);ctx.globalAlpha=1;ctx.globalCompositeOperation='source-over';ctx.filter='none';\n}\njsoncut.onFrame(draw);"
    }
  ],
  "aspectVariants": [],
  "compositionKind": "video",
  "canvasBackground": "#000000",
  "editabilityTarget": "layered"
}
